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

2025-11-18 21:45:30

1、建立一个每日产出数据统计表格。如图。

注意此例中代码是按照A列名称分页的。如若想直接用此代码,请将需要的分类列放到A列。

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

2、录制一个名为"Sepsheets"的空宏。用于加载代码。名称可按自身习惯自取。

甚至可命名李光耀以表纪念。

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

3、打开刚才建立的空宏并插入如下斜体加黑代码。

Sub Sepsheets()

' Sepsheets Macro

' 将工作薄"Sep"的内容按A列分类从第二行开始放入不同工作薄中。

Dim i As Integer

Dim j As Integer

' i & j 用于行循环

Dim k As Integer

Dim h As Integer

' k & h用于excel表单循环

Dim m As Integer

'm用于根据表头内容判断有多少列需要分页

Dim n As Integer

'临时变量,用于判断是否需要新建表单

Dim p As String

'p 代表当前工作表单表单名

Dim q As String

'q用于表示以A列中分类的内容为名建立的表单

Range("a1").Select

p = ActiveSheet.Name

j = ActiveSheet.[a65536].End(3).Row

m = Sheets(p).Cells(1, 256).End(xlToLeft).Column

h = Sheets.Count

n = 0

For i = 2 To j

    Sheets(p).Select

    If Range("A" & i).Value <> "" Then

    

        For k = 1 To h

            If Sheets(k).Name <> Range("A" & i).Value Then

                n = n + 1

            End If

        Next k

        If n = h Then

            Sheets.Add after:=Sheets(h)

            h = h + 1

            Sheets(h).Name = Sheets(p).Range("A" & i).Value

            Sheets(p).Range("A1:" & Chr(m + 64) & "1").Copy Sheets(h).Range("a1")

        End If

        n = 0

        q = Sheets(p).Range("A" & i).Value

        Sheets(p).Range("A" & i & ":" & Chr(m + 64) & i).Copy Sheets

(q).[a65536].End(3).Offset(1, 0)

    End If

Next i

End Sub

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

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

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

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

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

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

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

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

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

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢