EXCEL 如何制作瀑布图,对于有些数据做图表非常适合用瀑布图,比如生活开支......
excel快速汇总同一工作簿中多个工作表的数据
若一个excel文件中有许多sheet工作表,它们的数据格式相同,
此时你需要将这些不同工作表的数据汇总到一起,
sheet工作表少的时候,直接复制粘贴就可以搞定;
sheet工作表多的时候,你还要复制粘贴吗?
还是借助vba,即宏命令来处理吧。
工具/原料
- excel2013
- 如何运用excel中的vba批量新建多个sheet工作表https://jingyan.baidu.com/article/48b558e3f0cb6b7f39c09a61.html
- 将总表数据自动分类到多个不同的sheet工作表https://jingyan.baidu.com/article/60ccbcebadede964cbb19769.html
方法/步骤
比如以下数据源,需要将岱舆、员峤、蓬莱、瀛洲、方丈五座神山的数据汇总到神山数据总表中,
点击开发工具--visual basic,或者按快捷键ALT F11,打开vba编辑器。
在编辑器中,右键点击模块新增一个模块;
若是没有模块,可以先右键点excle对象进行新增
将下面的代码复制进去,并点击上面的运行按钮。
Sub huizongdata()
rows("3:10000").Clear
'第一步是先清空汇总表的数据,这里是从第3行开始清理到10000行,可以自海边丽己修改。
Dim st As Worksheet, rng As Range, rrow As Integer
'定义一些需要用到的变量
For Each st In Worksheets '循环开始,遍历所有的工作表
If st.Name > ActiveSheet.Name Then
' 若遍历的当前工作表不是当前的活动工作表
Set rng = Range("A10000").End(xlUp).Offset(1, 0)
'每次循环就动态定位需要拷贝数据的区域,即获得A列第一个空的单元格
rrow = st.Range("A3").CurrentRegion.rows.Count - 2
'获得每个工作表中的数据记录数,即行数,同时需要陕董减去表头的行数,这里是减掉2行。
st.Range("A3").Resize(rrow, 4).Copy rng
'将数据扩展rows行,4列拷贝到数据,并粘贴到汇总表
End If
Next
End Sub
注释:
rows("3:10000").Clear
'用来先清空汇总表的数据。
For Each st In Worksheets
'用来做循环,遍历所有的工作表
st.Range("A3").Resize(rrow, 4).Copy rng
'将数据扩展rows行,4列拷贝到数据,并粘贴到汇总表,rows行已经通过上一步进行获得。
点击关闭,返回到汇总表,即我们的活五伟动工作表。
在汇总工作表上建立一个按钮,将宏命令与他关联,方便以后使用。
关于按钮和宏命令的关联方法,可以看我的经验贴
https://jingyan.baidu.com/article/574c521951bc466c8c9dc16f.html
点击按钮,执行vb代码,
运行完毕后,可以看到数据已经自动汇总到神山数据汇总表中了。
注意事项
- vb代码中的参数可以根据自己表的情况进行变更,也可以关注并发信息给我。
- excel将sheet工作表批量保存为单独文件或工作簿https://jingyan.baidu.com/article/eae0782762867d1fec548503.html
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!