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

Excel中如何使用VBA代码给大量工作表快速排序

时间:2024-10-15 18:25:01

我们螅岔出礤在使用Excel时总会遇到各种各样的难题,如果我们懂得知识越多,我们解决问题起来就越方便啦,总之我们要有这个观念:大量重复的工作一定要想简便方法。例如下面这个问题。

工具/原料

Excel

方法/步骤

1、在使用Excel的过程中我们可能会遇到这个问题,一个工作簿有几十个工作表,结果这些工作表的顺序不太满足要求,我们想将这些工作表快速排序。你有什么好方法来解决这个问题吗?

Excel中如何使用VBA代码给大量工作表快速排序

2、复杂问题还是得vba代码出马啦。alt+F11——双击thisbook——打开工作簿的代码编辑框。

Excel中如何使用VBA代码给大量工作表快速排序

3、复制进去如下代码。Subml()DimshtAsWorksheet,k&挢旗扦渌;[a:a]=&qu泠贾高框ot;"'清空A列数据[a1]="目录"k=1ForEachshtInWorksheets'遍历工作簿中每个工作表k=k+1'累加K值Cells(k,1)=sht.Name'将工作表名称依次放入表格A列NextEndSub

Excel中如何使用VBA代码给大量工作表快速排序

4、在开发工具选项插入一个按钮。什么!你的软件怎么没有这个选项卡?看我下一篇经验你就知道怎么让它出现了。画好一个按钮框以后,软件让你给它指定宏代码,当然是选择产生目录啦。

Excel中如何使用VBA代码给大量工作表快速排序

Excel中如何使用VBA代码给大量工作表快速排序

5、点击一下获取目录(这是我重命名的,不会的话给我留言),目录就神奇的产生啦。

Excel中如何使用VBA代码给大量工作表快速排序

6、对目录进行筛选,排序,也可以手工排序。

Excel中如何使用VBA代码给大量工作表快速排序

7、然后再在代码编辑框输入这些代码。Subsortsheet()Dimsh隋茚粟胫tAsWorksheet,shtname$,i&am禊诬娱飑p;Setsht=ActiveSheet'设置变量sht为当前激活的工作表,即目录表。Fori=2Tosht.Cells(Rows.Count,1).End(3).Row'遍历工作表A列的数据,A1以外。shtname=sht.Cells(i,1)'将A列值赋值为字符串变量shtnameSheets(shtname).Moveafter:=Sheets(i-1)'将工作表依次移动Nextsht.Activate'重新激活目录表EndSub

Excel中如何使用VBA代码给大量工作表快速排序

8、然后再画一个按钮,指定sortsheet。

Excel中如何使用VBA代码给大量工作表快速排序

9、改好按钮名称后就是这样的啦,按一下按钮。神奇的事情就出现了,工作表居然改变了顺序。

Excel中如何使用VBA代码给大量工作表快速排序

© 一点知识