我试图将宏限制为特定的测试!工作表当我激活下面粘贴的宏时,我在测试中!工作表,宏工作.但是,当我尝试在不同的工作表上激活宏时,我收到一个错误.我是否需要修改VBA代码才能使其工作在工作簿中的任何其他工作表?谢谢
Sub Test ()
' Test Macro
'
' Keyboard Shortcut: Ctrl+Shift+B
'
Range ("Test!B1").Select
Selection.ClearContents
Range ("Test!B2").Select
Selection.ClearContents
Range ("Test!B3").Select
Selection.ClearContents
End Sub
Run Code Online (Sandbox Code Playgroud)
您必须直接引用工作表:
Dim ws as worksheet
set ws = Thisworkbook.Worksheets("Test")
with ws
.Range("B1:B3").ClearContents
end with
Run Code Online (Sandbox Code Playgroud)
其他注意事项:请勿使用.Select或Selection.只需直接操作对象即可.您的原始代码中存在String问题会导致编译时错误(在我的代码中已修复)您可以在一行代码中清除整个范围,而不是逐个单元格