我使用下面的代码清除A2单元格中的内容直到最后。如果活动工作表是TimeStampWork,此代码工作正常。但如果我在任何其他工作表上,我将收到错误1004,方法'范围'对象' _Worksheet'失败的错误。如果工作表未激活,如何运行相同的代码?
Sub test1()
Dim ForClr As Worksheet
Set ForClr = Workbooks("Main.xlsm").Sheets("TimeStampWork")
ForClr.Range("A2", Range("A2").End(xlDown)).ClearContents
End Sub
答案 0 :(得分:1)
在这个Range对象中,其中一个是不合格的,因此引用活动工作表:
ForClr.Range("A2", Range("A2").End(xlDown)).ClearContents
你应该写
ForClr.Range(ForClr.Range("A2"), ForClr.Range("A2").End(xlDown)).ClearContents
答案 1 :(得分:0)
试试这个
Sub test1()
Dim ForClr As Worksheet
Set ForClr = Sheets("TimeStampWork")
ForClr.range(ForClr.range("A2"), ForClr.range("A2").End(xlDown)).ClearContents
End Sub