日常使用------利用VbA对Excel中的多个sheet工作表排序

在excel工作簿中对有多个工作表,由于个人需要,对每个工作表中某一值的比较大小后,然后进行排序。

由于vba中字典对应值比较难以排序,所以就分为两步

第一步是提取工作表名和对应字段写到工作表中:

Sub getname()
    Dim sheet As Worksheet
    Dim k As Integer
    k = 17
    For Each sheet In Worksheets
        Cells(k, 1) = sheet.Name
        Cells(k, 2) = sheet.Cells(2, 3)
        k = k + 1
    Next
End Sub

得到后排序:

再利用第二个函数对排序后的工作表名进行相应的移动:

Sub sortmysheet()
    Dim sheet As Worksheet
    Dim sheetname As String
    Dim i As Integer
    Set sheet = ActiveSheet
    For i = 1 To 41
        sheetname = sheet.Cells(i, 1)
        Sheets(sheetname).Move after:=Sheets(i)
    Next
    sheet.Activate
End Sub

其中 sheet是新建了一个空白工作表,然后一个41行

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值