Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1964|回复: 8

请帮忙将附档中的代码修改一下,得出sheet2 中的分类汇总结果如下,谢谢

[复制链接]
发表于 2019-12-8 16:24 | 显示全部楼层 |阅读模式


各位高手、老师:

请帮忙将附档中的代码修改一下,得出 sheet2 中的如下分类汇总结果如下,谢谢:




副本Xl0000026.zip

15.09 KB, 下载次数: 8

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2019-12-9 08:40 | 显示全部楼层
这种不用代码,数据透视鼠标点几下就成了,数据透视专门做分类汇总的。你这个例子是其中最基本的情形之一,数据透视的强项就是各种汇总。
回复

使用道具 举报

发表于 2019-12-9 11:24 | 显示全部楼层
http://www.excelpx.com/thread-424101-1-1.html
以前的附件吧?下面通过修改录制宏改的






'添加数据透视表,通过数据透视表向导
Sub AddPt()
    Dim pt As PivotTable
    Dim x As Range, y As Range

    Set x = Sheets(1).[a1].CurrentRegion
    Set y = Sheets(2).[a1]
    Call DelPt(y.Parent)
    Set pt = y.Parent.Parent.PivotTableWizard(xlDatabase, x, y)

    With pt
        '1)拖放字段
        .PivotFields("商品代码").Orientation = xlRowField
        .PivotFields("品名").Orientation = xlRowField
        .PivotFields("客户名称").Orientation = xlRowField
        With .PivotFields("数量")
            .Orientation = xlDataField
            .Function = xlSum
        End With

        '2)其它设置
        .PivotFields("商品代码").Subtotals(1) = False    '不显示分类汇总
        .PivotFields("品名").Subtotals(1) = False
        .PivotFields("客户名称").Subtotals(1) = False
        .ColumnGrand = False    '总计 , 对行和列禁用
        .RowGrand = False
        .RepeatAllLabels xlRepeatLabels    '重复所有项目标签
    End With
    Range("a1").CurrentRegion.EntireColumn.AutoFit
End Sub

'删除数据透视表
Sub DelPt(x As Worksheet)
    Dim pt As PivotTable
    Application.ScreenUpdating = False
    x.Cells.Clear
    For Each pt In x.PivotTables
        pt.TableRange2.Clear    '包括整个数据透视表(含页字段)的区域
    Next
End Sub


1.rar (16.09 KB, 下载次数: 12)
回复

使用道具 举报

 楼主| 发表于 2019-12-9 11:47 | 显示全部楼层
爱疯 发表于 2019-12-9 11:24
http://www.excelpx.com/thread-424101-1-1.html
以前的附件吧?下面通过修改录制宏改的

爱疯老师,
   谢谢您, 但我在运行时显示编译错误: 变量未定义,  显示在这句代码上 “ .RepeatAllLabels xlRepeatLabels  ”, 请帮忙看看是哪里出问题了,谢谢

TIM图片20191209113832.png


回复

使用道具 举报

发表于 2019-12-9 11:49 | 显示全部楼层
你是excel03,还是excel几?
回复

使用道具 举报

发表于 2019-12-9 11:52 | 显示全部楼层
可能你的版本,还没有该方法。
如果删掉该句,还达不到效果,就再想办法用别的方式。
回复

使用道具 举报

 楼主| 发表于 2019-12-9 12:07 | 显示全部楼层
爱疯 发表于 2019-12-9 11:52
可能你的版本,还没有该方法。
如果删掉该句,还达不到效果,就再想办法用别的方式。

爱疯老师,   我用的office 2007了
回复

使用道具 举报

发表于 2019-12-9 14:37 | 显示全部楼层
danysy 发表于 2019-12-9 12:07
爱疯老师,   我用的office 2007了

QQ截图20191209142758.png

那就删掉,看看在07下的效果行不行。
回复

使用道具 举报

 楼主| 发表于 2019-12-9 17:54 | 显示全部楼层
爱疯 发表于 2019-12-9 14:37
那就删掉,看看在07下的效果行不行。

爱疯老师,  好的,谢谢您。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 16:41 , Processed in 0.333763 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表