ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 30317|回复: 8

如何设置汇总项默认为求和而不是计数

[复制链接]

TA的精华主题

TA的得分主题

发表于 2011-7-28 12:32 | 显示全部楼层 |阅读模式
向高手求教,如何设置数据透视表汇总项默认为求和而不是计数,汇总项目很多,一个一个字段设置很烦

TA的精华主题

TA的得分主题

发表于 2011-7-28 13:03 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
保证汇总字段的记录都为数字就可以默认为求和,而不是计数。

TA的精华主题

TA的得分主题

发表于 2011-7-28 13:05 | 显示全部楼层
或者写代码循环更改每一个数据字段,改成求和。

TA的精华主题

TA的得分主题

发表于 2011-7-28 20:43 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
选中区域,定位空单元格,输入0然后ctrl+enter结束,通过把空格转换成0就可以搞定

TA的精华主题

TA的得分主题

发表于 2011-7-29 01:29 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
SQL指定是求和也可以,其實論壇有人介紹一個好方法,今日快睡覺了,沒找到,明天奉上!

TA的精华主题

TA的得分主题

发表于 2011-7-29 08:15 | 显示全部楼层
计数项主要是因为数据源中存在空白单元格或文本型数值。
解决的方法有常规方法或VBA方法
①1.在数据源区域中第一行的空白单元格中输入数值0。
2.选中存在文本型数值的列,单击菜单“数据”→“分列”,单击“下一步”按钮,继续单击“下一步”按钮,“列数据格式”组合框中选中“常规”单选按钮,单击“完成”按钮。
3.创建数据透视表。

  1. Sub 新建透视表()
  2. Dim ws As Worksheet
  3. Dim ptcache As PivotCache
  4. Dim pt As PivotTable
  5. Dim prange As Range
  6. Set ws = Sheet1
  7. For Each pt In Sheet2.PivotTables
  8. pt.TableRange2.Clear
  9. Next pt
  10. Set ptcache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, _ SourceData:= Sheet1.Range("a1").CurrentRegion.Address)
  11. Set pt = ptcache.CreatePivotTable(tabledestination:=Sheet2.Range("a3"), _ tablename:="透视表1")
  12. pt.ManualUpdate = True
  13. pt.AddFields RowFields:="项目", ColumnFields:="Data"
  14. For Each prange In ws.Range(ws.Cells(1, 2), ws.Cells(1, 256).End(xlToLeft))
  15. With pt.PivotFields(prange.Value)
  16.     .Orientation = xlDataField
  17.     .Name = " " & prange
  18.     .Function = xlSum
  19. End With
  20. Next prange
  21. pt.ManualUpdate = False
  22. pt.ManualUpdate = True
  23. End Sub
复制代码
(详见http://club.excelhome.net/viewthread.php?tid=349437

TA的精华主题

TA的得分主题

发表于 2012-1-5 09:20 | 显示全部楼层
卢子 发表于 2011-7-28 20:43
选中区域,定位空单元格,输入0然后ctrl+enter结束,通过把空格转换成0就可以搞定

这个方法简便又快捷,太好用了.谢谢分享

TA的精华主题

TA的得分主题

发表于 2014-2-18 20:30 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2018-8-13 10:46 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-25 08:21 , Processed in 0.042514 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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