Vraća Booleovu vrijednost koja označava je li neobavezna vrijednost variantargument proslijeđena u postupak.
Sintaksa
IsMissing( argname )
Traženi argument argname sadrži naziv neobaveznog argumenta Procedura variant .
Napomene
Pomoću funkcije IsMissing utvrdite jesu li u pozivanju procedure navedeni neobavezni argumenti Variant . IsMissing vraća True ako za navedeni argument nije proslijeđena nijedna vrijednost; u suprotnom vraća False. Ako IsMissing vraća True za argument, korištenje argumenta koji nedostaje u drugom kodu može uzrokovati korisnički definiranu pogrešku. Ako se IsMissing koristi u argumentu ParamArray , uvijek vraća False. Da biste otkrili praznu paramArray, provjerite je li gornja granica polja manja od donje granice.
Napomena: IsMissing ne funkcionira na jednostavnim vrstama podataka (kao što su Cijeli broj ili Dvostruko) jer, za razliku od varijanti, nemaju resurse za "nedostaje" bit zastavice. Zbog toga sintaksa za upisne neobavezne argumente omogućuje vam da odredite zadanu vrijednost. Ako se argument izostavi kada se procedura poziva, argument će imati tu zadanu vrijednost, kao u primjeru u nastavku:
Napomena: Primjeri koji slijede prikazuju korištenje te funkcije u modulu jezika Visual Basic for Applications (VBA). Da biste pronašli dodatne informacije o radu s VBA-om, na padajućem popisu uz stavku Traži odaberite stavku Referenca za razvojne inženjere pa unesite jedan ili više izraza u okvir pretraživanja.
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then ' MyVar was omitted. Else ... End Sub
U mnogim slučajevima možete izostaviti If MyVar testa tako da zadana vrijednost bude jednaka vrijednosti koju želite MyVar ako je korisnik izostavi iz poziva funkcije. To čini vaš kod konciznijim i učinkovitijim.
Primjer
U ovom se primjeru funkcija IsMissing koristi za provjeru je li neobavezni argument proslijeđen korisnički definiranom postupku. Imajte na umu da neobavezni argumenti sada mogu imati zadane vrijednosti i vrste koje nisu 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