Как в пользовательской функции создать один или несколько необязательных аргументов?
Категория: Basic
2012-09-06 16:14:16
Для создания необязательных аргументов следует использовать ключевое слово Optional. Обратите внимание на то, что все необязательные аргументы должны располагаться последними в списке аргументов и иметь тип Variant, если Вы планируете использовать функцию IsMissing().
code: #vba
Function CellText(Arg1 As String, Optional Arg2) As String End Function
Для того, чтобы проверить, было ли передано значение необязательному аргументу, можно использовать функцию IsMissing()
code: #vba
Function CellText(Arg1 As String, Optional Arg2) As String If IsMissing(Arg2) = True Then CellText = Arg1 & "A" Else CellText = Arg1 & Arg2 End If End Function
Два примера вызова этой пользовательской функции из ячеек рабочего листа:
[code]=CellText("Текст") =CellText("Текст";"B") [/code]При необходимости можно указать значение, которое будет использоваться по умолчанию:
code: #vba
Function CellText$(Arg1$, Optional Arg2$ = "C", Optional Arg3$ = ";") CellText = Arg1 & Arg3 & Arg2 End Function
Три примера вызова этой пользовательской функции из ячеек рабочего листа:
=CellText("Текст") =CellText("Текст";"B") =CellText("Текст";"B";" ")
Поделиться: