假设你的数据开始第2行中,尝试在D2:
=ArrayFormula({unique(trim(transpose(split(concatenate(A2:A&","),",")))),sumif(A2:A, "=*"&unique(trim(transpose(split(concatenate(A2:A&","),","))))&"*",B2:B)})
,或者:
=query(ArrayFormula({transpose(split(query(substitute(A2:A,",",""),,50000)," ")),transpose(split(concatenate(rept(B2:B&char(9), len(A2:A)-len(substitute(A2:A, ",",""))+1)),char(9)))}), "select Col1, sum(Col2) where Col1 <>'' group by Col1 label sum(Col2)'' ")
另一种方法(学分AdamL这一个):
=ArrayFormula(QUERY(TRANSPOSE(SPLIT(QUERY(REPT(A2:A&", ",B2:B),,ROWS(A2:A)),", "))&{"",""},"select Col1, count(Col2) group by Col1 label count(Col2) ''",0))
来源
2015-04-14 20:37:57
JPV
我不需要的信息,但是是我找ColumnD了。我只是用它作为标识符来显示结果显示在另一列中。我在列中使用了逗号分隔的值,然后使用了该模式的使用次数值,但是我希望最终获得类似于所有独特位置在一列中的所需结果以及包含所有计数的总和那个地方在下一列。 – Tangy
我希望国家名称可能是'提供'的(使ColumnE更容易!),但是你很幸运,因为@JPV提供了一个很好的答案,并且我确认了第一个公式作品(受你的表格没有大数目,〜50k +,行)。 – pnuts