不确定我是否忽略了某些东西,但似乎无法找到答案。我有两张纸:
第1页
country | cost
---------------------
DE | 5
FR | 4
US | 3
MX | 2
AT | 1
第2页
region | country
---------------------
EU | DE
EU | FR
AM | US
AM | MX
EU | AT
我想要的是所有欧洲国家的成本总和。在过去,我只使用带有VLOOKUP的C列作为Sheet 1中的区域,然后对这些数据进行SUMIF。我想避免这种情况,因为Sheet 1中的数据量巨大且动态。
我当然可以使用
=FILTER(Sheet2!country, Sheet2!region="EU")
会返回{“DE”,“AT”,“FR”}的数组,但我不能使用
=SUMIF(Sheet1!cost, Sheet1!country=FILTER(Sheet2!country, Sheet2!region="EU"))
有替代方案吗?
答案 0 :(得分:1)
也许你正在寻找这样的东西:
=ArrayFormula(sum(sumif(A:A,filter(Sheet2!B:B,Sheet2!A:A="EU"),B:B)))
答案 1 :(得分:0)
然后,用INDEX MATCH替换VLOOKUP,
= IFERROR(INDEX(Sheet2!$ A $ 2:A $ 6,MATCH(A3,Sheet2!$ B $ 2:B $ 6,0))
其中表2中的col B是国家/地区,col A是区域
答案 2 :(得分:-1)
为了使用VLOOKUP,您必须更改工作表2的布局,使其在第1列中具有国家/地区在第2列中具有区域
然后你可以在第一张的col C中使用VLOOKUP
= VLOOKUP(A3,Sheet4!$ A $ 2:$ B $ 6,2) 向下拖动
总结:
= sumif(C3:C7," EU",B3:B7)