香港腕表价格交流群

指定某列字段,拆分总表为若干个分表存在当前工作簿里,只需要3秒!

2020-11-14 07:47:48

有一个总表,有很多行数据,现在要根据姓名列,来拆分。同一个人的数据单独存放在一个分表里。



怎么拆?可以透视表拆,在我的课程里《Excel+PPT+Word小白变大神[500节]》里讲过的。课时195,ED027。



今天呢,我给大家分享一种VBA拆分法。代码照着搬过去就行了。



Sub 拆分成分表()

    

    Dim x As Long, y As Long

    Dim rng

    Dim d As Object

    

    Application.ScreenUpdating = False

    Application.DisplayAlerts = False

    

    Set d = CreateObject("scripting.dictionary")

    

    With Worksheets("明细表")

        x = .Cells(.Rows.Count, 1).End(xlUp).Row

        c = .Cells(1, .Columns.Count).End(xlToLeft).Column

        rng = .Range("B1:B" & x)

        For y = 2 To UBound(rng)

            xm = CStr(rng(y, 1))

            If Not d.exists(xm) Then

                Set d(xm) = .Range("a1").Resize(1, c)

            End If

            Set d(xm) = Union(d(xm), .Cells(y, 1).Resize(1, c))

        Next

    End With

    

    For Each ll In d.keys

        On Error Resume Next

        Set sht = Worksheets(ll)

        If Err Then

            Set sht = Worksheets.Add(after:=Worksheets(Worksheets.Count))

            sht.Name = ll

        End If

        On Error GoTo 0

        With Worksheets(ll)

            .Cells.Clear

            d(ll).Copy .Range("A1")

        End With

    Next

    

End Sub



然后,开发工具,宏(也可以按alt+f8)

选择这个宏“拆分成分表”,执行

结果很快出来了


拆分出来的结果截图






更多帅o(╥﹏╥)o的技能,尽在


更详细的解释都在课程里。Excel+PPT+Word小白变大神[520节]

更多活灵活现淋漓尽致酣畅淋漓的解读

更多Excel,PPT,Word 实战技能足以让你傲视群雄


阅读原文加入我的课程《Excel+PPT+Word小白变大神[将520节]》


点击阅读原文,打开购买链接,一次购买课程,享受终生辅导

李则见老师大部分情况下都直接回答你关于课程本身的所有问题

我微信号excelpptpeixun

让我成为你职场上office成长加速器

让我成为你职场上office软件技能的顾问

长期陪伴你一起成长一起进步一起转折

请火速加入这套课程,最终530节大餐,饕餮之夜等您开启


2018年找对目标,开始学习之旅,从此不再蹉跎时光

《Excel+PPT+Word小白变大神[即将520节]》



让李则见能成为您身边的长期的office顾问!

只需要加入本套视频课程即可。


欢迎转发朋友圈。

公共号转载须授权。


更多精彩,点击下方“  阅读原文”查看







有一种支持,叫做点赞


友情链接

Copyright © 2023 All Rights Reserved 版权所有 香港腕表价格交流群