VBA错误:方法'范围'对象' _Worksheet'失败

时间:2017-08-28 13:40:02

标签: excel vba excel-vba excel-formula

我使用下面的代码清除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

2 个答案:

答案 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