Palauttaa totuusarvon, joka ilmaisee onko valinnainen Muuttujaargumentti välitetty kohteeseen toiminto.
Syntaksi
IsMissing( argumentinnimi )
Pakollinen argumentinnimi-argumentti sisältää valinnaisen Muuttuja-toimintosarjan argumentin nimen.
Huomautuksia
IsMissing-funktion avulla voit tunnistaa, onko toimintosarjan kutsumisessa annettu valinnaisia Variant-argumentteja. IsMissing palauttaa arvon Tosi , jos määritetylle argumentille ei ole välitetty arvoa. muussa tapauksessa se palauttaa arvon Epätosi. Jos IsMissing palauttaa argumentille Tosi , puuttuvan argumentin käyttäminen toisessa koodissa voi aiheuttaa käyttäjän määrittämän virheen. Jos IsMissing-funktiota käytetään ParamArray-argumentissa , se palauttaa aina arvon Epätosi. Jos haluat havaita tyhjän ParamArrayn, testaa, onko matriisin yläraja pienempi kuin sen alaraja.
Huomautus: IsMissing ei toimi yksinkertaisissa tietotyypeissä (kuten Kokonaisluku tai Double), koska toisin kuin Muuttujia, niitä ei ole valmisteltu puuttuvaa merkintäbittiä varten. Tämän vuoksi syntaksin valinnaisten argumenttien avulla voit määrittää oletusarvon. Jos argumentti jätetään pois, kun toimintosarjaa kutsutaan, argumentilla on tämä oletusarvo, kuten alla olevassa esimerkissä:
Huomautus: Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa. Jos haluat lisätietoja VBA:n käytöstä, valitse Sovelluskehittäjän opasHaku-kentän viereisestä luettelosta ja anna yksi tai useampi hakuehto hakukenttään.
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then ' MyVar was omitted. Else ... End Sub
Monissa tapauksissa voit jättää If MyVar-testin kokonaan pois tekemällä oletusarvosta yhtä suuren kuin arvosta, jonka haluat, että MyVar sisältää, jos käyttäjä jättää sen pois funktiokutsusta. Tämä tekee koodista yksinkertaisemman ja tehokkaamman.
Esimerkki
Tässä esimerkissä IsMissing-funktiolla tarkistetaan, onko valinnainen argumentti välitetty käyttäjän määrittämään toimintosarjaan. Huomaa, että valinnaiset argumentit voivat nyt sisältää oletusarvoja ja muitakin tietotyyppejä kuin Muuttuja.
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