一个Excel工作簿中有N张sheet表,我们现在需要把它们都合并到一张表中。怎么做呢?
如果一个一个表复制粘贴太慢了。也有这3种方法可以:公式链接、Microsoft Query和Power Query。其中用公式的方法会因为有太多公式而拖慢表格速度,而被很多Excel高手视为法宝的Power query,昨天我测试合并5个表时直接卡死。速度很慢.....而如果是下面的形式呢:
在合并表中点一下按钮,瞬间完成多张sheet表的合并
上面的这种操作是不是你最想要的?那么就交个大家吧
操作步骤:
一、在合并名称Sheet工作表右键 -点击查看代码
二、在弹出的窗口执行插入 - 模块,然后把下面的代码粘贴到右面的窗口中,然后关闭该窗口
Sub 合并()
Dim x As Integer, K As Integer
Sheets("合并").Cells.Clear
For x = 1 To 11
K = Application.CountA(Sheets("合并").[a:a]) + 1
Sheets(x).UsedRange.Copy Sheets("合并").Cells(K, 1)
Next x
End Sub
代码的意思请记一下:
Sub 合并()
Dim x As Integer, K As Integer
声明变量
Sheets("合并").Cells.Clear
合并单元格之前把当前表中数据清除
For x = 1 To 11
在所有表格中循环,1是第一个Sheet的名称,11是最后一个Sheet的名称,
可以自定义名称没有要求
K = Application.CountA(Sheets("合并").[a:a]) + 1
调用Counta函数统计合并表格的总行数+1是下面第一个空行的行数
Sheets(x).UsedRange.Copy Sheets("合并").Cells(K, 1)
一个一个把Sheet表格的数据粘贴到合并的表格中
Next x
End Sub
这些看不懂?没有关系的,你复制粘贴代码就行了,有两个地方你可以自定义修改:
1、For x =1to11 这里1和11是表格前后序号,你可以设置合并的范围。
2、Sheets("合并") 这里的合并是总表的名称,你的Excel文件中需要有这个一个表,你也可以自定义一个名称。
三、、开发工具 - 拖画出一个按钮 - 弹出的指定宏窗口中选取合并 - 确定 - 修改按钮标题。
四、文件另存为“Excel 启用宏的工作簿”格式,才可以
留言与评论(共有 0 条评论) |