Atgriež Būla vērtību , kas norāda, vai neobligāts Variantarguments ir nodots procedūra.
Sintakse
IsMissing( argname )
Nepieciešamais arguments arname satur neobligāta varianta procedūras argumenta nosaukumu.
Piezīmes
Izmantojiet funkciju IsMissing , lai noteiktu, vai procedūras izsaukšanai ir sniegti neobligātie Argumenti Variant . IsMissing atgriež True , ja norādītajam argumentam nav nodota vērtība; pretējā gadījumā tā atgriež False. Ja isMissing argumentam atgriež True , trūkstošā argumenta izmantošana citā kodā var izraisīt lietotāja definētu kļūdu. Ja ParamArray argumentā tiek izmantota isMissing, tā vienmēr atgriež vērtību False. Lai noteiktu tukšu ParamArray, pārbaudiet, vai masīva augšējā robeža ir mazāka par tā apakšējo robežu.
Piezīme.: IsMissing nedarbojas ar vienkāršiem datu tipiem (piemēram, Integer vai Double), jo atšķirībā no Variantiem tiem nav "trūkstoša" karodziņa bita nodrošināšanas. Tāpēc ievadīto neobligāto argumentu sintakse ļauj norādīt noklusējuma vērtību. Ja arguments tiek izlaists, kad tiek izsaukta procedūra, argumentam ir šī noklusējuma vērtība, kā šajā piemērā:
Piezīme.: Turpmākajos piemēros redzama šīs funkcijas izmantošana Visual Basic for Applications (VBA) modulī. Lai iegūtu papildinformāciju par darbu ar VBA, nolaižamajā sarakstā atlasiet Uzziņas materiāli izstrādātājiem blakus meklēšanas lodziņam un ievadiet šajā lodziņā vienu vai vairākus vārdus.
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then ' MyVar was omitted. Else ... End Sub
Daudzos gadījumos pilnībā var izlaist If MyVar , padarot noklusējuma vērtību vienādu ar vērtību, kas MyVar ir, ja lietotājs izlaiž šo funkciju no funkcijas zvana. Tas jūsu kodu padara precīzāku un efektīvāku.
Piemērs
Šajā piemērā izmantota funkcija IsMissing , lai pārbaudītu, vai lietotāja definētai procedūrai nav nodots neobligāts arguments. Ņemiet vērā, ka neobligātajiem argumentiem tagad var būt noklusējuma vērtības un tipi, kas nav 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