Excel精英培训网

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

能VBA做分类统计

[复制链接]
发表于 2019-4-25 21:52 | 显示全部楼层 |阅读模式
1学分
本帖最后由 SHQM 于 2019-4-25 21:54 编辑

能把表中相同数据复到汇总中,相同数据的数量复到汇总中并相加,具体附件中有图例,望高手师傳们帮助一下,非常感激,谢谢 特别的统计.rar (28.8 KB, 下载次数: 11)

发表于 2019-4-26 09:41 | 显示全部楼层
你这个问题简单函数就可以做了,没必要用vba。
p6单元格的函数公式:=SUMIF($B$5:$G$58,M6,$E$5:$E$58)
q6单元格的函数公式:=VLOOKUP(N6,$C$5:$I$56,7,0)
有个小问题:单价那一列只有q6单元格不能返回正确的结果,其他单元格都正确。经多次测试,如果把“浪涌保护器”的型号缩短一点,改成“HYS4-B/4P  (Imax=80KA  In=40KA)”,结果就正常了。

回复

使用道具 举报

 楼主| 发表于 2019-4-26 11:50 | 显示全部楼层
hfwufanhf2006 发表于 2019-4-26 09:41
你这个问题简单函数就可以做了,没必要用vba。
p6单元格的函数公式:=SUMIF($B$5:$G$58,M6,$E$5:$E$58)
q ...

谢谢你抽空帮我解决问题.不过不是你这样的,第一结果在另外一个工作表上,第二累计出来的总数没有乘上D22单元合计行的2台数量。况且是要把Shhtte1上的B.C.D列相同文字复制一个到另外一个工作表上,并以H列上相同的文字作为一个段落(灰色的行)。
回复

使用道具 举报

发表于 2019-4-26 12:29 | 显示全部楼层
SHQM 发表于 2019-4-26 11:50
谢谢你抽空帮我解决问题.不过不是你这样的,第一结果在另外一个工作表上,第二累计出来的总数没有乘上D22单 ...

你这么一解释,我确实看不懂你的意思了,有几点疑问我估计别人或许也会有:
1、“结果在另一个表上”这不是个问题,excelk跨表引用数据只要加上工作表前缀就可以了。我没看懂的是为什么要与d22相乘?这里面的规律是什么?是只有这个项目要相乘还是后面所有的项目都要相乘?你之前的原文没讲这个;
2、“要把Shhtte1上的B.C.D列相同文字复制一个到另外一个工作表上”是人工复制还是vba来复制?如果是vba复制,你样本上复制过来的项目也不全,少了很多项目;
3、我仔细琢磨了这两个表的关系,第一个表是报价单,你写上了标题,第二个表我推测是结算单。按照逻辑,第一个表应该是只有单价,就像是给顾客看的菜单一样,不应该有数量。实际使用的项目材料和数量都放在第二张表中,这样比较合乎逻辑。我推测你第一张表的合计可以理解成是“每个项目用两组”,如果是类似的意思,可以在第一个表增加一列来描述“组数”,这比放在d22合计栏要容易理解;
4、从总体思路上判断,我还是倾向于用函数,因为工程结算实际使用的材料是变动的,就是你说的“把B.C.D列相同文字复制到另一个表上”,这个过程完全是手动,代码帮不上忙,代码唯一要做的就是查个价格,vlookup远比代码简单;
回复

使用道具 举报

 楼主| 发表于 2019-4-26 18:32 | 显示全部楼层
hfwufanhf2006 发表于 2019-4-26 12:29
你这么一解释,我确实看不懂你的意思了,有几点疑问我估计别人或许也会有:
1、“结果在另一个表上”这 ...

感谢帮助
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 03:26 , Processed in 0.302903 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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