如何从范围对象中删除#N / A?

时间:2015-01-08 14:59:47

标签: excel-vba vba excel

我们说我有一个功能

Public Function dummy(x As Double, vec As Range) As Double
.
.
.
End Function

有时,我传递给vec的范围包含#N/A。在将值分配给数组之前,如何从#N/A中删除vec?我不打算用另一个值替换#N/A

2 个答案:

答案 0 :(得分:1)

使用数组而不是范围。

您可以循环访问数组的元素并删除任何 #N / A 而不更改范围。

答案 1 :(得分:-1)

使用VBA中的isna( value )功能。我没有在我的机器上安装Excel,但未经过测试。但是这样的事情应该有效:

for each cl in vec
    if WorksheetFunction.isna(cl.value) = true then
        cl.clear
    end if
next cl