我有一个大的excel speadsheet,其中包括(以及其他)以下列
orderId price
222 50.00
222 52.60
223 44.00
223 60.00
224 20.00
225 40.00
有没有办法将orderId显示为唯一一行,并且该ID下的所有价格的总和?所以这个例子会导致
orderId price
222 102.60
223 104.00
224 20.00
225 40.00
如果有必要,我很乐意创建一个宏来完成这项工作(我有VB知识,但多年没有使用它,我以前从未将它应用到excel中)
答案 0 :(得分:1)
这很容易通过数据透视表解决,除非我误解了你的要求。
插入 - > Pviot表
设置如下
答案 1 :(得分:0)
虽然它不是VBA解决方案,但您只需复制并粘贴订单ID列,并使用Excel功能区中的“删除重复项”来创建唯一列表。然后在每个条目的右边,只需输入= SUMIF(A:A,C1,B:B),其中A:AI假定是订单ID列,C1是唯一列表中的第一个条目,B:B i假设是值的位置。
= SUMIF(您要查看的范围是什么?,您想要查找什么?,您要添加的值在哪里?)
对于VBA,您可以使用字典对象,只需输入在对象id列中找到的每个唯一值,如果它存在,则只需将该总数添加到该条目的值即可。最后,只需使用.keys和.items输出列表。 :)