Ошибки, которые на виду
'Лист 2' B20:B25; Случмежду (1:5))
Вы задаете диапазон B20:B25 (6 ячеек) а случайное
Случмежду (1:5)
работает на 5 чисел. В принципе это не ошибка, но В25 у вас никогда не выпадет
Попробуйте так :
Sub Cripton()
Dim ss As Byte
Randomize
ss = 20 * Int(Rnd) + 5
nn = Sheets("Лист1").Cells(ss, 2)
Sheets("Лист2").[B5] = nn
End Sub
* обратите внимание что "Лист1" и "Лист2" написаны без пробелов

Есть у меня "Лист 1" и "Лист 2" в Excel.
На первом листе в ячейку B5 нужно вывести по нажатию кнопки случайное значение из диапазона второго листа.
Формула выглядит так: Индекс ('Лист 2'B20:B25; Случмежду (1:5)). Она работает
Теперь нужно поместить ее в макрос.
Пробовал:
Private Sub CommandButton2_Click()
Range("B5").FormulaArray = "=INDEX('Лист 2'B26:B32, RANDBETWEEN(1:5))
End Sub
- ругается на первый аргумент индекса.
Пробовал:
Private Sub CommandButton2_Click()
With ThisWorkbook.Sheets
Sheets("Лист 1").Range("B5").FormulaArray = application.Index(Range("B26:B32"),(RANDBETWEEN(1, 6))
End With
End Sub
- выдает якобы синтаксическую ошибку.
Может кто нибудь подсказать?