Vráti booleovskú hodnotu označujúcu, či bol voliteľný variantargument odovzdaný do procedúra.
Syntax
IsMissing( názovargumentu )
Povinný argument názovargumentu obsahuje názov voliteľného argumentu procedúry Variant.
Poznámky
Pomocou funkcie IsMissing môžete zistiť, či boli alebo neboli zadané voliteľné argumenty variantu pri volaní procedúry. 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 funkcia IsMissing použije v argumente ParamArray , vždy vráti hodnotu False. Ak chcete zistiť prázdnu hodnotu ParamArray, otestujte, či horná hranica poľa je 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 If MyVar test úplne vynechať tak, že predvolená hodnota sa bude rovnať hodnote, ktorú má MyVar obsahovať, ak ju používateľ vynechá z volania funkcie. Vďaka tomu je váš 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