Excel多个工作表合并至一个工作表!
效果如下所示:
要求汇总至一个工作表
表一数据:
姓名定位性别程咬金坦克男刘禅坦克男墨子坦克男亚瑟坦克男钟无艳坦克女
表二数据:
姓名定位性别貂蝉法师女妲己法师女墨子法师男小乔法师女大乔法师女姜子牙法师男周瑜法师男
表三数据:
姓名定位性别后羿射手男黄忠射手男刘备射手男鲁班射手男孙尚香射手女马可波罗射手男
使用ALT D P功能的多重合并计算,但是在添加字段时,如果存在100张表格,那么这种方法的效率是极低的
那么只需要使用VBA方法,就能轻松快速的解决,如果你的字段不是3个,那么仅需将下面字段中的标红位置进行相应修改即可!
Sub 多表合并()
Dim arr()
For Each sh In Sheets
If sh.Name <> '汇总' Then
arr1 = sh.Range('a2:c' & sh.UsedRange.Rows.Count)
act = act UBound(arr1)
ReDim Preserve arr(1 To 3, 1 To act) '
For j = 1 To UBound(arr1)
n = n 1
arr(1, n) = arr1(j, 1)
arr(2, n) = arr1(j, 2)
arr(3, n) = arr1(j, 3)
Next
End If
Next
Sheets('汇总').[a2].Resize(n, 3) = Application.Transpose(arr)
End Sub
将文件另存为xlsm格式,要不然重新打开文件时这段代码就消失了!