我编写了一个宏来使用 excel 范围对象的 SpecialCells 方法从某个范围内查找空白单元格。当我尝试执行以下代码时,出现“未找到单元格”的异常。
Sub test()
Debug.Print Sheet1.Range("A1:D4").SpecialCells(xlCellTypeBlanks).Address
End Sub
脚步:-
- 打开一个新的 Excel 实例。
- 按 ALT + F11/ 打开 VBE
- 插入新模块
- 粘贴上面的代码并运行上面指定的测试宏。
收到的输出:
运行时错误“1004”。未找到细胞。
预期输出:
$A$1:$D$4
情况1:
现在,如果我对单元格 A1 进行任何操作。诸如赋予填充颜色等操作。调用 test() 宏然后它不会抛出异常。
收到的输出:
1澳元
预期输出:
$A$1:$D$4
案例二:
假设如果我在单元格 B3 中给出任何值。调用 test() 宏,不抛出异常。
收到的输出:
$B$1:$B$2,$A$1:$A$3
预期输出:
$A$1:$D$4
案例3:
如果我尝试编辑值或填充“A1:D4”范围之外的单元格,例如 E10 并执行 test() 方法,那么它会给我正确的输出。
收到的输出:
$A$1:$D$4
注意:使用新的 excel 实例执行每个案例。