如何使用excel下行代码

时间:2014-05-07 13:32:51

标签: string vba excel-vba excel

我写了一个代码=

Worksheets("Sheet1").range("A" & ":E").Copy Destination:=Sheets("Sheet2").range("A1").

此代码帮助我将Sheet1中的内容(在A列到E列中)复制到另一个Sheet2。它被复制到A1中。但是,代码会将A列中的所有内容复制到E中。有些内容在特定行下面是我不想要的。 我已经应用了End(xlDown).Row代码如下:

Worksheets("Sheet1").range("A" & ":E").End(xlDown).Row.Copy 
Destination:=Sheets("Sheet2").range("A1")

然而,它给了我运行时错误

'424': Object required

请协助。提前致谢

1 个答案:

答案 0 :(得分:0)

您要问的是什么并不完全清楚,但实际上,您的代码失败了,因为.Row方法返回长整数值,而不是范围对象。您不能对整数使用.Copy方法,以便解释错误。

您可以尝试将其复制到该范围内的 last 行(注意:您可以执行.Range("A:E"),没有理由使用&符连接两个字符串文字,你可以简单地使用完整的字符串" A:E"):

Worksheets("Sheet1").Range("A:E").End(xlDown).EntireRow.Copy _
    Destination:=Sheets("Sheet2").Range("A1")

或者,如果您需要将整个范围复制到.End(xlDown),那么我认为:

Worksheets("Sheet1").Range("A1:E1", Range("A1:E1").End(xlDown)).Copy _
    Destination:=Sheets("Sheet2").Range("A1")

否则,需要更多细节才能提供帮助。