Функция IsMissing

Возвращает значение типа Boolean, указывающее, передан ли необязательный аргумент типа Variant в процедуру.

Синтаксис

IsMissing( имя_аргумента )

Обязательный аргумент имя_аргумента содержит имя необязательного аргумента процедуры с типом данных Variant.

Замечания

Функция IsMissing используется для проверки передачи необязательных параметров типа Variant при вызове процедуры. Функция IsMissing возвращает значение True, если для указанного аргумента не было передано значение; в противном случае она возвращает False. Если IsMissing возвращает для аргумента значение True, использование отсутствующего аргумента в другом коде может вызвать ошибку, определенную пользователем. Если функция IsMissing используется для аргумента ParamArray, она всегда возвращает значение False. Чтобы обнаружить пустой аргумент ParamArray, проверьте, не является ли верхняя граница массива меньше его нижней границы.

Примечание : Функция IsMissing не работает с простыми типами данных (такими как Integer или Double), поскольку, в отличие от Variants, для них не предусмотрен бит флага "опущенного аргумента". В связи с этим синтаксис ввода необязательных аргументов позволяет указать для них значения по умолчанию. Если такой аргумент отсутствует при вызове процедуры, ему будет присвоено указанное значение по умолчанию, что демонстрируется в следующем примере.

Примечание : В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.

Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then
' MyVar was omitted.
Else
...
End Sub

Во многих случаях проверку If MyVar можно опустить, задав значение, которое будет присвоено аргументу MyVar по умолчанию, если пользователь не укажет значение при вызове функции. Это позволяет сократить объем программы и повысить ее эффективность.

Пример

В этом примере с помощью функции IsMissing проверяется, передан ли необязательный аргумент в определяемую пользователем процедуру. Обратите внимание, что теперь аргументы Optional могут иметь значения по умолчанию и тип, отличный от типа Variant.

Dim ReturnValue
' The following statements call the user-defined
' function procedure.
ReturnValue = ReturnTwice() ' Returns Null.
ReturnValue = ReturnTwice(2) ' Returns 4.
' Function procedure definition.
Function ReturnTwice(Optional A)
If IsMissing(A) Then
' If argument is missing, return a Null.
ReturnTwice = Null
Else
' If argument is present, return twice the value.
ReturnTwice = A * 2
End If
End Function
Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×