相同的Excel宏在不同情况下给出错误

时间:2011-08-01 13:53:54

标签: excel-vba vba excel

我在Excel中有2个Sub()函数。两者都有不同的名称,但代码相同。但是当试图一起运行时会出现“应用程序定义”错误。我无法理解问题所在

以下是相同

的代码
Sub GT456T()

Sheets("Sheet2").Rows("1:1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet1").Select
Rows("11:11").Select
ActiveSheet.Paste

End Sub



Sub CopyRecord()


Sheets("Sheet2").Rows("1:1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet1").Select
Rows("11:11").Select
 ActiveSheet.Paste
End Sub

我不明白为什么在一个接一个地运行时会出错。如果我运行第一个宏它不会引发错误,但在第一个宏之后立即执行第二个它会抛出“应用程序已定义”错误。请帮忙

1 个答案:

答案 0 :(得分:3)

如果没有关于这个问题的更多细节,这就是猜测,但这是我对它的看法:

.Select方法仅适用于父工作表当前处于活动状态的范围。当您运行任一宏时,Sheet1在运行完毕后最终成为活动表。然后你尝试在第一个之后“立即”再次运行宏,并且宏想要在Sheet2上选择一些东西,但是Sheet2不活动。 Sheet1是。所以你得到一个错误。

那里,这是我最好,最有根据的猜测。