Applies ToMicrosoft 365 专属 Access Access 2021 Access 2019 Access 2016

返回一个 布尔 值,该值指示是否已将可选的 Variant参数 传递给 过程 。

语法

IsMissing ( argname )

所需的 argname 参数包含可选 Variant 过程参数的名称。

备注

使用 IsMissing 函数检测在调用过程中是否提供了可选的 Variant 参数。 如果未为指定参数传递任何值,则 IsMissing 返回 True;否则,返回 False。 如果 IsMissing 为参数返回 True ,则在其他代码中使用缺少的参数可能会导致用户定义的错误。 如果对 ParamArray 参数使用 IsMissing,则始终返回 False。 若要检测空 ParamArray,请测试以查看数组的上限是否小于其下限。

注意:  IsMissing 不适用于简单的数据类型 (,例如 IntegerDouble) ,因为与 Variants 不同,它们没有针对“缺失”标志位的预配。 因此,类型化可选参数的语法允许指定默认值。 如果在调用过程时省略参数,则该参数将具有此默认值,如以下示例所示:

注意: 下面的示例演示了如何在 Visual Basic for Applications (VBA) 模块中使用此函数。 有关使用 VBA 的详细信息,请在搜索旁边的下拉列表中选择“开发人员参考”,并在搜索框中输入一个或多个术语。

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 IfEnd Function

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。