IsMissing 函式
傳回布爾值,指出是否已將選擇性的 Variant 自變數傳遞至程式。
語法
IsMissing (argname)
必要的 argname 自變數包含選擇性 Variant 程式自變數的名稱。
註解
使用 IsMissing 函式來偵測是否已在呼叫程式時提供選擇性的 Variant 自變數。 如果指定的自變數未傳遞任何值,IsMissing 會傳回 True;否則,它會傳回 False。
如果 IsMissing 針對自變數傳回 True ,則在其他程式代碼中使用遺漏的自變數可能會導致使用者定義錯誤。
如果在 ParamArray 自變數上使用 IsMissing,它一律會傳回 False。 若要偵測空的 ParamArray,請測試 以查看數位 的 上限是否小於其下限。
IsMissing 不適用於像 是 Integer 或 Double) 等簡單數據類型 (,因為不同 於 Variants,它們沒有「遺漏」旗標位的布建。 因此,具型別選擇性自變數的語法可讓您指定預設值。 如果在呼叫程式時省略自變數,則自變數會有此預設值,如下列範例所示。
Sub MySub(Optional MyVar As String = "specialvalue")
If MyVar = "specialvalue" Then
' MyVar was omitted.
Else
...
End Sub
在許多情況下, If MyVar
如果使用者從函數調用中省略測試,您可以將預設值設為等於您想要 MyVar
包含的值,完全省略測試。 這可讓您的程式代碼更加簡潔且有效率。
範例
此範例會使用 IsMissing 函式來檢查是否已將選擇性自變數傳遞至使用者定義程式。 請注意, 選擇性自 變數現在可以有 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
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。