在没有xlDown的情况下在excel vba中复制行和列(包括空格)

时间:2017-05-10 02:37:00

标签: excel vba excel-vba

我想将工作表的行和列复制到新工作簿。我可以打开并激活新书和新工作表,但我正在复制的数据目前是A1:F520在一张纸上,A1:G1031在另一张纸上。中间有多个空白  并且在几个“组”的数据集中。 Example of Groups

为了我们的数据的可视化组织,我想保留这些空白。范围将随着时间的推移而变化,所以我不想定义具体的东西。我宁愿保持它像Range一样(“A1”,Range(“A1”.End(xlDown))。我想我可以包含一些可笑的大范围来确保一切都在那里,但我宁愿在一种更有活力(如果这是正确的话)的方式。

这是我到目前为止所做的:

Option Explicit

Public LGSheet As Worksheet
Public SGSheet As Worksheet
Public NewWorkbook As Workbook
Public UserYear As Integer
Sub DefineYear()

    UserYear = Application.InputBox(Prompt:="Set Date for New Workbook", Type:=1)
    Set NewWorkbook = Workbooks.Add
    Set SGSheet = Worksheets.Add
    Set LGSheet = Worksheets.Add
    Call PasteLGTandSGT

End Sub
Sub PasteLGTandSGT()

    Workbooks("Finished Products YTD Generator").Activate
    Worksheets("LGT").Activate
        Range("A1", Range("A1").End(xlDown)).Copy
    LGSheet.Activate

显然我把xlDown位放在这里,而我的google-fu还不够强大,无法再找到更多内容。

1 个答案:

答案 0 :(得分:0)

例如:

year.append()

请注意,您不需要激活要复制或粘贴的工作表,这是一个很好的习惯。