На этом шаге мы рассмотрим реализацию возможности использования заранее неизвестного количества параметров.
Как правило, количество передаваемых параметров в подпрограмму совпадает с количеством определенных у этой подпрограммы параметров. Однако ключевое слово ParamArray предоставляет возможность ввода в подпрограмму произвольного, заранее не указанного числа параметров (например, как это происходит при использовании функции рабочего листа СУММ (sum)). В качестве примера приведем функцию, которая выполняет то же действие, что и функция рабочего листа СУММ. Отличием функции СуммаПользователя от СУММ является то, что в ней в каждое поле ввода диалогового окна мастера функций можно вводить только либо число, либо ссылку на ячейку, а не на диапазон, как при работе с функцией СУММ.
Function СуммаПользователя (ParamArray Массив()) s = 0 For Each a In Массив s = s + а Next a СуммаПользователя = s End Function
На следующем шаге мы рассмотрим рекурсивные подпрограммы.