我如何总计基于分组的总和

我有2列的数据(每次更改) – 基本状态和编号。 这是一个例子:

示例数据

State Total Connecticut 624 Georgia 818 Washington 10 Arkansas 60 New Jersey 118 Ohio 2,797 N. Carolina 336 Illinois 168 California 186 Utah 69 Texas 183 Minnesota 172 Kansas 945 Florida 113 Arizona 1,430 S. Dakota 293 Puerto Rico 184 

每个状态都需要分组。 分组如下:

分组

 **US Group 1** California District of Columbia Florida Hawaii Illinois Michigan Nevada New York Pennsylvania Texas **US Group 3** Iowa Idaho Kansas Maine Missouri Montana North Dakota Nebraska New Hampshire South Dakota Utah Wyoming 

其他所有州属于美国2组

我想要做的是总计每个组。 所以在这个例子中我总共有:

汇总

 650 in Group 1 (4 states) 6365 in Group 2 (9 states) 1307 in Group 3 (3 states) 

所以每次我用这个数据得到一个新的电子表格时,我不想每次都创build一个if / countif / sumif公式。 我认为select我的数据可能会更有效率,并可能运行一个macros将这样做(可能检查一些传说或东西)

任何人都可以指向正确的方向吗? 现在我已经对VBA编辑感兴趣了2天了。

这是一种方法。

第1步:为每个组创build一个命名范围。

第2步:试试这个公式: =SUMPRODUCT(SUMIF(A2:A18,Group1,B2:B18))

公式细分:

A2:A18是州名

组1是命名的范围,它具有组1中的每个状态

B2:B18是你想要求和的值。

重要的是你的状态名称和你想要的值是相同的大小(行数)。 你也应该标准化你的州名。 在您的数据和南达科他州南达科他州在您的命名范围内将无法正常工作。 将州名称的不同变体添加到您的列表中,或者将您的数据标准化。

为了清楚地看到公式在做什么,使用公式选项卡上的评估公式button,它会比我试图解释它好得多。

编辑

尝试使用此公式计算不在Group1或Group3中的值:

 =SUMPRODUCT(--(NOT(ISNUMBER(MATCH(A2:A18,Group1,0)))),--(NOT(ISNUMBER(MATCH(A2:A18,Group3,0)))),B2:B18) 

似乎在我的工作。 基本上,它只能在B2:B18中求和valyes,其中两个匹配函数都返回N / A(这意味着它不在定义的组列表中)。

使用vlookup将你的状态映射到组。 然后从组号码中添加它,如果find了,或者添加0。