Повертає логічне значення, яке вказує на те, чи передано додатковий варіантаргумент до процедура.
Синтаксис
Ismissing ( арґімені )
Аргумент «обов'язкове ім'я » містить ім'я необов'язкового аргументу «процедура варіанта ».
Примітки
За допомогою функції Ismissне можна визначити, чи надано відповідні аргументи варіанта для виклику процедури. Функція Ismissing Повертає логічне значення True , якщо для вказаного аргументу не було передано жодних значень. інакше повертає значення FALSE. Якщо функція isзниклий Повертає логічне значення True для аргументу, використання відсутнього аргументу в іншому коді може спричинити помилку, визначену користувачем. Якщо функція ismissне використовується для аргументу paramarray , вона завжди повертає значення FALSE. Щоб визначити пусту Парамасив, перевірте, чи верхня межа масиву менша за її нижню межу.
Примітка.: Ismissing не працює на простих типах даних (наприклад, ціле число або два), тому що, на відміну від варіантів, вони не мають положення для позначки "відсутній". У зв'язку з цим синтаксис для введеного необов'язкового аргументу дає змогу вказати значення за замовчуванням. Якщо аргумент не вказано, коли буде викликано процедуру, аргумент матиме значення за замовчуванням, як у прикладі нижче.
Примітка.: У прикладах нижче показано використання цієї функції в модулі Visual Basic for Applications (VBA). Щоб отримати докладні відомості про використання модуля VBA, клацніть пункт Довідник розробника в розкривному списку поряд із полем Пошук і введіть у поле пошуку принаймні один термін.
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then
' MyVar was omitted.
Else
...
End Sub
У багатьох випадках If MyVar тесту можна пропустити повністю, виконавши значення за замовчуванням, яке дорівнює значенню, яке потрібно MyVar , якщо користувач не пропускає його від виклику функції. Це робить код точнішим та ефективнішим.
Приклад
У цьому прикладі функція Ismissing використовується, щоб перевірити, чи передано необов'язковий аргумент до процедури, визначеної користувачем. Зверніть увагу, що додаткові аргументи тепер можуть мати значення за замовчуванням і типи, окрім варіанту.
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