Я хотел бы написать функцию VBA, которая имеет диапазон в качестве необязательного параметра. Например, что-то вроде:
Public Function testfunc(S As String, Optional R As Range) As String
testfunc = S
For Each cell In R
testfunc = testfunc + cell
Next cell
End Function
Я попробовал описанную выше функцию, но получил #VALUE! ошибка. Я также пробовал обернуть цикл For внутри оператора If (R) Then ... End If.
Как можно было бы работать с необязательным диапазоном, где, если диапазон существует, он повторяется с помощью For Каждый цикл?