运行时错误' 1004'在VBA子程序中

时间:2017-11-21 21:20:37

标签: excel vba excel-vba runtime-error subroutine

我的一个Excel对象似乎有问题。看看下面的代码片段。我创建了子例程Run_all(),当我单步执行时,它会进入函数row_count()并开始执行,但是当它到达第一个突出显示的行时,我得到了错误。

**正确输入我在函数中引用的工作表。例如,如果我运行底部子程序CA_Copy_Paste_,它可以正常工作,我没有错误。

为什么Excel无法识别"表3"在功能?对于更多上下文,它仅在我输入" Sheet4"时才有效。不适用于" Sheet1"或" Sheet2"任

This image shows the portion of my VBA in question. Since this is my first question, I cannot embed images, but have to use the below link

1 个答案:

答案 0 :(得分:1)

如果您坚持使用.Select和.Activate来完成目标,则必须在激活或选择该工作表上的单元格或单元格范围之前激活工作表。

worksheets("sheet 3").activate
activesheet.range("c4").activate

如果您希望使用某些“速记”尝试在一行代码中完成此操作,请切换到Application.GoTo方法。

Application.Goto reference:=worksheets("sheet 3").range("c4")

无论如何,最好避免使用select和activate。请参阅 How to avoid using Select in Excel VBA