Funktionen IsMissing

Returnerer en boolesk værdi, der angiver, om et valgfrit argument af typen Variant er blevet overført til en procedure.

Syntaks

IsMissing(argnavn)

Det obligatoriske argument argnavn indeholder navnet på et valgfrit procedureargument af typen Variant.

Bemærkninger

Brug funktionen IsMissing til at undersøge, om der er valgfrie variant-argumenter ved kald af en procedure. IsMissing returnerer Sand, hvis der ikke er overført nogen værdi for det angivne argument. I modsat fald returneres Falsk. Hvis IsMissing returnerer Sand for et argument, kan der opstå en brugerdefineret fejl, hvis det manglende argument anvendes i andre koder. Hvis IsMissing bruges på et parametermatrix-argument, returneres der altid Falsk. Du kan registrere et tomt parametermatrix-argument ved at undersøge, om matrix øvre grænse er mindre end den nedre grænse.

Bemærk:  Funktionen IsMissing virker ikke på simple datatyper (f.eks. heltal eller dobbelt reelt heltal), fordi de, i modsætning til varianter, ikke kan indeholde et flag (en bit) for "manglende indhold". Derfor er det muligt at angive en standardværdi ved hjælp af syntaksen til typebestemte valgfrie argumenter. Hvis argumentet udelades, når proceduren kaldes, får argumentet denne standardværdi som i eksemplet nedenfor

Bemærk: I de følgende eksempler demonstreres brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Du kan få yderligere oplysninger om arbejde med VBA ved at vælge Udviklerreference på rullelisten ud for Søg og indtaste et eller flere udtryk i søgeboksen.

Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then
' MyVar was omitted.
Else
...
End Sub

Du kan i mange tilfælde helt undlade at bruge testen If MyVar ved at lade standardværdien være den værdi, som MyVar skal indeholde, hvis brugeren ikke medtager argumentet i funktionskaldet. Dette gør koden mere præcis og effektiv.

Eksempel

I dette eksempel bruges funktionen IsMissing til at kontrollere, om et valgfrit argument er overført til en brugerdefineret procedure. Bemærk, at valgfrie argumenter nu kan have andre standardværdier og -typer end 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
Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×