如何检查Variant是否为空并在Excel VBA中为其指定其他变量

New*_*ler 3 excel vba excel-vba

我正在尝试创建一个具有3个输入的函数,其中两个是可选的:colOffsetA&colOffsetB.如果函数中只使用了两个可选项中的一个,那么我希望这个值也自动分配给空值.现在代码colOffsetB由于某种原因分配值0 .

Function TestCode(cellA As Range, Optional colOffsetA As Variant, Optional colOffsetB As Variant) As String

    If IsEmpty(colOffsetB) Then
        colOffsetB = colOffsetA
    End If
Run Code Online (Sandbox Code Playgroud)

Por*_*ner 6

我相信你所寻找的IsMissing不是IsEmpty.试试这个:

If IsMissing(colOffsetB) = True Then
    colOffsetB = colOffsetA
End If
Run Code Online (Sandbox Code Playgroud)

这是一篇关于Optional参数的好文章.