参考从中复制数据的选项卡,将不同选项卡中的数据整理到单个选项卡

Collate data from different tabs to single tabs with reference of the tabs from which the data is copied

我有一个工作簿,大约有 20-25 个作业sheet。我只想将每个作品的第 4 行中的填充行 sheet 复制到单个 sheet - "Collate" 以及源作品的名称 sheet( 从哪里数据被复制)。在 Collat​​e worksheet 中,仅应复制每个 worksheet 中填写的行(连同第一列中的 worksheet 名称)。有人可以 suggest/provide vba 代码来实现上述目标。

我把这个任务分成了2个functions/subroutines。 在每个选项卡中添加带有选项卡名称的列的函数 - 将 WS 调暗为工作表 LASTROW 一样长 出错继续下一步 对于表中的每个 WS 如果 WS.Name <> "Master" 并且 WS.Name <> "Collate" 那么 与 WS LASTROW = .Range("A" & Rows.Count).End(xlUp).行 .Columns(1).Insert .Range("A1:A" & LASTROW) = WS.Name 结束于 万一 下一个WS B. 接受 no 的函数。 header 行并从下一行(第 header 行 + 1)开始整理数据(包括添加的带有选项卡名称的列)- 将我调暗为整数 将 xTCount 变暗为变体 将 xWs 调暗为工作表 出错继续下一步 L输入: xTCount = Application.InputBox("The number of header rows", "", "1") 如果 TypeName(xTCount) = "Boolean" Then Exit Sub 如果不是 IsNumeric(xTCount) 那么 消息框 "Only can enter number", , "Enter Header Rows" 转到 LInput 万一 设置 xWs = ActiveWorkbook.Worksheets.Add(Sheets(1)) xWs.Name = "Master" 工作表(2).范围("A1").EntireRow.Copy 目的地:=xWs.Range("A1") 因为我 = 2 到 Worksheets.Count 工作表(I).Range("A1").CurrentRegion.Offset(CInt(xTCount), 0).Copy _ 目的地:=xWs.Cells(xWs.UsedRange.Cells(xWs.UsedRange.Count).Row + 1, 1) 下一个