一个Excel工作簿中有N张sheet表,现需要把它们合并到一张表中。
如果逐个表复制粘贴太慢了。以前兰色也介绍过3种方法:公式链接、Microsoft Query和Power Query。
其中公式法会因为有太多公式而拖慢表格速度,而被很多Excel高手视为法宝的Power query,昨晚兰色测试合并8个表时直接卡死。速度真的很慢很慢…..
而如果是下面的形式呢:
在合并表中点一下按钮,瞬间完成多张sheet表的合并。
上面的操作是不是你最想要的?想学就跟兰色一起操作吧!
操作步骤:
1、在工作表右键 – 查看代码
2、在弹出的窗口执行插入 – 模块,然后把下面的代码粘贴到右面的窗口中,然后关闭该窗口
Sub 合并()
Dim x As Integer, K As Integer
Sheets(“合并”).Cells.Clear
For x = 1 To 16
K = Application.CountA(Sheets(“合并”).[a:a]) + 1
Sheets(x).UsedRange.Copy Sheets(“合并”).Cells(K, 1)
Next x
End Sub
代码的含义:
看不懂?没关系,你只需要复制粘贴代码即可,有两个地方你可以自定义修改:
- For x =1 to 16 这里1和16是表格前后序号,你可以设置合并的范围。
- Sheets(“合并”) 这里的合并是总表的名称,你的Excel文件中需要有这个一个表,你也可以自定义一个名称。
3、开发工具 – 拖画出一个按钮 – 弹出的指定宏窗口中选取合并 – 确定 – 修改按钮标题。
4、文件另存为“Excel 启用宏的工作簿”格式
完成!
兰色说:当你掌握了很多Excel技巧、函数的用法,觉得自已是大神的时候,学会了VBA,你会发现原来你以前学的只是小儿科而已,就如本文的几行VBA代码就可以秒杀power query。一个不会VBA的Excel用户,只能是初级水平而已。