Зачем для этого скрипт, если есть готовая функция в Excel? Что вообще нужно сделать с результатом? Найти, а дальше что?
Сообщение автоматически объединено:
Private Sub Worksheet_Calculate()
n = 0
s = 0
For i = 2 To 22
n = n + 1
s = s + Range("B" & i).Value
Next
Range("G1").Value = s / n
End Sub
Этот скрипт практически сделает то же самое, что вписывание в клетку G1 формулы
=AVERAGE(B2:B22)
.