将来自不同工作簿的特定工作表合并到一个循环中的一个主工作簿中

时间:2016-01-26 21:26:44

标签: excel excel-vba vba

每个月都会编辑桌面文件夹中的未知数量的文件。

我开发了一个2步宏来获取这些编辑过的数据并将其合并到一个主文件中。首先,我将每个文件中的数据连接并转置,然后将它们全部合并到主数据文件中。我遍历文件夹,打开每个文件并在每个文件中创建一个新的摘要表。其次,我有一个循环遍历指定文件夹中每个文件的宏,选择数据行,复制它,然后将其粘贴到一个名为" MasterData"的单独工作簿中。

我的问题是我的第二个宏(合并功能)没有指向我的目标文件"主数据"或者主数据中的特定表格"我希望数据合并到。我在下面没有循环代码包含它,

Dim Line1 As String
Dim Line2 As String
Dim MasterData As Workbook
Dim MasterDataSheet As Worksheet
Worksheets("sheet1").Select
Line1 = Range("A2:HA2")
Worksheets("Sheet1").Select
Line2 = Range("A3:HA3")
Set MasterData = Workbooks.Application.ActiveWorkbook
Worksheets("MasterData").Select
Worksheets("MasterData").Range("A1").Select
RowCount = Worksheets("MasterData").Range("a1").CurrentRegion.Rows.Count
With Worksheets("MasterData").Range("A1")
 .Offset(RowCount, 0) = Line1
 .Offset(RowCount, 0) = Line2
End With
MasterData.Save

如何确保数据到达主数据工作簿?

1 个答案:

答案 0 :(得分:0)

您是否尝试过调用Sheet1Sheet2Sheet3,...而不是Worksheets("name")

查看屏幕左侧,所有表格都在下拉列表中,并尝试使用括号中名称前面的名称。

在图片中,两者都被命名为Sheet1(Sheet1)。使用不带括号的名字,如: Sheet1.Range("A1")代替Worksheets("MasterData").Range("A1")

图像: image of excel VB