Excel 如何将长表追加到一张母版图纸中(不合并)
我有大约10张表格,所有表格都有相同的列,但行数不同(每张多达1000行)。不同的人填充工作表(有时会无意中弄乱格式) 我想用一种方法将所有数据拉到一个主控表中,这样它从表1 A1:H1000中获取数据并将其放入主控表A1:H1000中,然后从表2 A1:H1000中获取数据并放入主控表A1001:H2001中 等等。(因此,我可以将过滤器/数据透视表放在主工作表上,并查看系统中的所有内容,而无需手动从每张工作表中获取数据,这每天都会变长。) 我已经尝试过将范围定义为表,并且可以让它完成其中的3个工作表,但是依赖于填充工作表的人员的小心,它似乎会过载 有简单的方法吗 TL;dr如何在工作表C中自动将工作表A和B中的行堆叠在彼此的顶部Excel 如何将长表追加到一张母版图纸中(不合并),excel,Excel,我有大约10张表格,所有表格都有相同的列,但行数不同(每张多达1000行)。不同的人填充工作表(有时会无意中弄乱格式) 我想用一种方法将所有数据拉到一个主控表中,这样它从表1 A1:H1000中获取数据并将其放入主控表A1:H1000中,然后从表2 A1:H1000中获取数据并放入主控表A1001:H2001中 等等。(因此,我可以将过滤器/数据透视表放在主工作表上,并查看系统中的所有内容,而无需手动从每张工作表中获取数据,这每天都会变长。) 我已经尝试过将范围定义为表,并且可以让它完成其中的3
谢谢 如果工作表在工作簿中按顺序排列(例如从索引1到索引10),则可以使用一个简单的循环:
Sub combine()
Dim i As Integer
Dim startRow As Long: startRow = 1
Dim endRow As Long: endRow = 1000
' enter master sheet name below
With ThisWorkbook.Worksheets("master sheet name")
' setup the start & end indexes below
For i = 1 To 10
.Range(.Cells(startRow, "A"), .Cells(endRow, "H")).Value = ThisWorkbook.Worksheets(i).Range("A1:H1000").Value
startRow = startRow + 1000
endRow = endRow + 1000
Next
End With
End Sub
这10张纸是一排的吗?喜欢第1张到第10张吗?谢谢Kubie!这些表是连续的,因此预期这会起作用;运行它似乎做了一些事情(需要一段时间来处理),但是“主”表中没有任何内容。我编辑了“母版图纸名称”,但没有其他内容。我是否需要在VBA中更具体地告诉它要查找哪些工作表?您的数据表从什么索引开始@JDoe,也只是在2个范围之后添加了
.Value
。。。现在该工作了