打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VBA常用小代码:对工作表按名称快速排序

比如说,有一个工作薄,有十几张工作表,现在要重新设置工作表排放顺序,能不能快速处理哩?

当然是可以的。 


为了方便大家理解和灵活使用VBA小代码,我们同03期一样,依然采用多步走的方式。


第1步,将工作簿现有的工作表名称提取到表格的A列。

代码如下:

Sub ml()

    'EH VBA公众号VBA编程学习与实践

    Dim sht As Worksheet, k&

    [a:a].ClearContents '清空A列内容

    [a:a].NumberFormat = '@'

    '设置文本格式,防止文本数值数据变形

    [a1] = '目录'

    k = 1

    For Each sht In Worksheets

    '遍历工作簿中每个工作表

        k = k 1

        '累加K值

        Cells(k, 1) = sht.Name

        '将工作表名称依次放入表格A列

    Next

End Sub



第2步,对A列的工作表名称排序。

利用EXCEL自带的排序功能,升序也好,降序也罢,甚至自定义排序,都可以很快捷的完成对A列工作表名称排序的操作。



第3步,此时,我们只需要让工作表按我们A列排列好的顺序重新排排坐就好了。

代码如下:

Sub Sortsheet()

    Dim Sht As Worksheet, Shtname$, i&

    Set Sht = ActiveSheet

    '设置变量sht为当前激活的工作表,即目录表。

    For i = 2 To Sht.Cells(Rows.Count, 1).End(xlUp).Row

   '遍历工作表A列的数据,A1以外。

        Shtname = Sht.Cells(i, 1).Value

       '将A列值赋值为字符串变量shtname

        Worksheets(Shtname).Move after:=Worksheets(i - 1)

       '将工作表依次移动

    Next

    Sht.Activate

   '重新激活目录表

End Sub

OK,搞定了。

代码一两行,工作不用忙断肠,说的就是酱紫的情况了,你也动手试一下吧~~




本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VBA/Excel-实例系列-01-工作簿目录生成
Excel | VBA(3)——生成带超链接的目录
常用VBA小代码:一键对工作表排序
Excel酷炫技能,批量修改工作表名称,让你的工作事半功倍
黑技术,秒破工作表加密
用VBA编程如何遍历EXCEL每一个工作表?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服