Option Explicit Sub random() Dim a(156), k, i, sluch As Integer For i = -78 To 78 If i = 22 Then k = 1 If i <> 22 Then a(i + 78 - k) = i Next For i = 0 To 155 sluch = Int(Rnd() * (155)) k = a(i): a(i) = a(sluch): a(sluch) = k Next
For i = -78 To 78 Cells(i + 79, 2) = a(i + 78) Next End Sub
Не поставил доллары... Так правильно: =ВПР(A3;ЛЕВСИМВ(список!$A$3:$L$18;ДЛСТР(A3));12;0) или без ВПР: =ИНДЕКС(список!$L$3:$L$18;ПОИСКПОЗ(A3;ЛЕВСИМВ(список!$A$3:$A$18;ДЛСТР(A3));0);0)
Sub schet() shetif = Evaluate("=SUMPRODUCT((A6:A10=""Протон"")*(B6:B10<>""""))") End Sub В переменной shetif будет количество значений в столбце центр затрат по точке Протон.
На счет воторого вопроса, можно просто исключить ввод повторяющихся данных в ячейках.
Вопрос примерно на ту же тему, поэтому новую создавать не стал. Нужно получить не нумерацию, а место (ранг) исходя из набранных очков. Нашел решение только с доп.столбцом. Подробнее в примере.