İsteğe bağlı bir Variantbağımsız değişkenyordam geçirilip geçirilmediğini gösteren bir Boole değeri döndürür.
Söz dizimi
IsMissing( argname )
Gerekli argname bağımsız değişkeni, isteğe bağlı değişken yordamı bağımsız değişkeninin adını içerir.
Açıklamalar
Bir yordamı çağırırken isteğe bağlı Değişken bağımsız değişkenlerinin sağlanıp sağlanmadığını algılamak için IsMissing işlevini kullanın. Belirtilen bağımsız değişken için hiçbir değer geçirilmemişse IsMissingTrue döndürür; aksi takdirde False döndürür. IsMissing bir bağımsız değişken için True döndürürse, diğer kodda eksik bağımsız değişkenin kullanılması kullanıcı tanımlı bir hataya neden olabilir. IsMissing bir ParamArray bağımsız değişkeninde kullanılıyorsa, her zaman False döndürür. Boş bir ParamArray algılamak için, dizinin üst sınırlarının alt sınırından küçük olup olmadığını test edin.
Not: IsMissing basit veri türlerinde ( Tamsayı veya Çift gibi) çalışmaz çünkü Varyantların aksine, "eksik" bayrak biti için bir sağlamaları yoktur. Bu nedenle, yazılan isteğe bağlı bağımsız değişkenlerin söz dizimi varsayılan bir değer belirtmenize olanak tanır. Yordam çağrıldığında bağımsız değişken atlanırsa, aşağıdaki örnekte olduğu gibi bağımsız değişken şu varsayılan değere sahip olur:
Not: Aşağıdaki örneklerde, bu işlevin Visual Basic for Applications (VBA) modülünde kullanımı gösterilir. VBA ile çalışma hakkında daha fazla bilgi için, rama'nın yanındaki açılan listede Geliştirici Başvurusu'nu seçin ve arama kutusuna bir veya birden çok terim yazın.
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then ' MyVar was omitted. Else ... End Sub
Çoğu durumda, kullanıcı işlev çağrısından atlarsa, varsayılan değeri MyVar içermesini istediğiniz değere eşit hale getirerek If MyVar testini tamamen atlayabilirsiniz. Bu, kodunuzu daha kısa ve verimli hale getirir.
Örnek
Bu örnekte, kullanıcı tanımlı bir yordama isteğe bağlı bir bağımsız değişkenin geçirilip geçirilmediğini denetlemek için IsMissing işlevi kullanılır. İsteğe bağlı bağımsız değişkenlerin artık Değişken dışında varsayılan değerlere ve türlere sahip olabileceğini unutmayın.
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