我想通过一列查找值“#N / A”,如果找到,则返回同一行但不同列的值。这是我写的代码:
Sub TestFind()
Dim r1(), r2()
r1 = Range("B2:B1000")
r2 = Range("A2:A1000")
For i = LBound(r1, 1) To UBound(r1, 1)
If r1(i, 1) = "#N/A" Then r2(i, 1)
Next i
Range("B3:B1000") = r1
End Sub
我究竟做错了什么?
使用对象的SpecialCells()
方法Range
仅通过错误循环遍历单元格,并使用CVERR函数检查错误类型:
Dim cel As Range
For Each cel In Range("B2:B1000").SpecialCells(xlCellTypeFormulas, xlErrors) ' loop through cells with errors
If cel.Value = CVErr(xlErrNA) Then MsgBox cel.Offset(, -1).Value
Next
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句