养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

Excel宏处理之数据分页一键处理

时间:2024-10-28 07:23:36

前一篇分享了用宏处理合并多页数据到同一页。工作中同样会碰到需要将同一页数据按类别分开到多页。隼韦艽枭当然拷贝,拷贝,再拷贝也是能解决问题的,但每关骇脘骱次都做重复的工作那也叫一个烦啊。既然可以一键合并,当然也可以一键分页。请这就往下看。

工具/原料

Excel2013

方法/步骤

1、建立一个每日产出数据统计表格。如图。注意此例中代码是按照A列名称分页的。如若想直接用此代码,请将需要的分类列放到A列。

Excel宏处理之数据分页一键处理

2、录制一个名为"Sepsheets"的空宏。用于加载代码。名称可按自身习惯自取。甚至可命名李光耀以表纪念。

Excel宏处理之数据分页一键处理

3、打开刚才建立的空宏并插入如下斜体加黑代码跷孳岔养。SubSepsheets()'Sepsheets惺绅寨瞀Macro'将工作薄"Sep"的内容按A列分类从第二行开始放入不同工作薄中。DimiAsIntegerDimjAsInteger'i&j用于行循环DimkAsIntegerDimhAsInteger'k&h用于excel表单循环DimmAsInteger'm用于根据表头内容判断有多少列需要分页DimnAsInteger'临时变量,用于判断是否需要新建表单DimpAsString'p代表当前工作表单表单名DimqAsString'q用于表示以A列中分类的内容为名建立的表单Range("a1").Selectp=ActiveSheet.Namej=ActiveSheet.[a65536].End(3).Rowm=Sheets(p).Cells(1,256).End(xlToLeft).Columnh=Sheets.Countn=0Fori=2TojSheets(p).SelectIfRange("A"&i).Value<>""ThenFork=1TohIfSheets(k).Name<>Range("A"&i).ValueThenn=n+1EndIfNextkIfn=hThenSheets.Addafter:=Sheets(h)h=h+1Sheets(h).Name=Sheets(p).Range("A"&i).ValueSheets(p).Range("A1:"&Chr(m+64)&"1").CopySheets(h).Range("a1")EndIfn=0q=Sheets(p).Range("A"&i).ValueSheets(p).Range("A"&i&":"&Chr(m+64)&i).CopySheets(q).[a65536].End(3).Offset(1,0)EndIfNextiEndSub

Excel宏处理之数据分页一键处理

Excel宏处理之数据分页一键处理

4、将宏存为ExcelAddIn以便调用。路径按需存在容易找到的地。

Excel宏处理之数据分页一键处理

5、加载存储的ExcelAddIn,并建立快捷栏图表。

Excel宏处理之数据分页一键处理

Excel宏处理之数据分页一键处理

6、最后来试试效果。点快捷栏刚建立的图标。

Excel宏处理之数据分页一键处理

© 一点知识