Vráti booleovskú hodnotu, ktorá označuje, či bol do procedúry odovzdaný voliteľný argument Variant .
Syntax
IsMissing(názovargumentu)
Povinný argument argname obsahuje názov voliteľného argumentu procedúry typu Variant .
Poznámky:
Funkcia IsMissing sa používa na zisťovanie, či pri volaní procedúry boli zadané voliteľné argumenty typu Variant . Funkcia IsMissing vráti hodnotu True , ak pre zadaný argument nebola odovzdaná žiadna hodnota. V opačnom prípade vráti hodnotu False. Ak funkcia IsMissing vráti pre argument hodnotu True , použitie chýbajúceho argumentu v inom kóde môže spôsobiť používateľom definovanú chybu. Ak sa pre argument ParamArray použije funkcia IsMising, vždy vráti hodnotu False. Ak chcete zistiť prázdne pole ParamArray, otestujte, či je horná hranica poľa menšia ako jeho dolná hranica.
Poznámka
Funkcia IsMissing nefunguje pri jednoduchých typoch údajov (ako je napríklad Integer alebo Double), pretože na rozdiel od argumentov Variant nemajú ustanovenie pre príznak „chýba“. Syntax pre zadané voliteľné argumenty vám preto umožňuje určiť predvolenú hodnotu. Ak sa argument pri volaní procedúry vynechá, bude mať túto predvolenú hodnotu, ako je znázornené v nasledujúcom príklade:
Poznámka
Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then
' MyVar was omitted.
Else
...
End Sub
V mnohých prípadoch môžete tento test úplne vynechať If MyVar tak, že nastavíte predvolenú hodnotu rovnakú ako hodnota, ktorú chcete MyVar obsahovať, ak ju používateľ pri volaní funkcie vynechá. Vďaka tomu bude kód stručnejší a efektívnejší.
Príklad
V tomto príklade je funkcia IsMissing použitá na overenie, či sa voliteľný argument odovzdal do používateľom definovanej procedúry. Všimnite si, že voliteľné argumenty teraz môžu mať predvolené hodnoty a typy iné ako 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