Необязательные параметры
Функции и процедуры можно вызвать, только если все необходимые параметры передаются
во время вызова. OOo Basic позволяет Вам определять параметры как необязательные, то
есть, если соответствующие значения не включены в запрос, OOo Basic передает пустой
параметр. В примере
Sub Test(A As Integer, Optional B As Integer)
End Sub
параметр A обязателен, тогда как параметр B является необязательным.
Функция IsMissing проверяет, передан ли параметр или нет.
Sub Test(A As Integer, Optional B As Integer)
Dim B_Local As Integer
' Проверка, присутствует ли параметр B фактически
If Not IsMissing (B) Then
B_Local = B ' Параметр B присутствует
Else
B_Local = 0 ' Параметр B отсутствует -> значение по умолчанию 0
End If
' ... Фактическое начало функции
End Sub
Пример сначала проверяет, передали ли параметр B и, в случае необходимости, передает
этот параметр внутренней переменной B_Local. Если соответствующий параметр
отсутствует, то значение по умолчанию (в этом случае, значение 0) передается B_Local, а не
переданному параметру.
Источник: StarOffice 8 Programming Guide for BASIC.