将具有相同值的多行组合到一行中,并列出该行的值

时间:2016-12-08 23:59:57

标签: google-sheets

所以我有一个由Google表格生成的电子表格。我想收集所有"用户名"从列B2:B并将其放入一行,它将使用具有与该行相同的用户名的列C2:C并将其放入列表中,因此基本上总结了所有用户名和获取行C2:C并将其放在列表中,因此每个用户名只会有一行。每次在B2:B列中都有一个新的用户名时,它会在公式下方的非占用行中生成另一行,这样它基本上会收集所有用户名并将列向右移动(C2:C)并将其放入在列表中。我知道这看起来很混乱,但如果你仔细阅读,你会明白的。我可能最终会删除这个,因为没人会理解。

这就是我的意思...... http://imgur.com/a/bt9EO(Imgur收藏)

请注意我不想使用时间戳列,因此请忽略公式。

1 个答案:

答案 0 :(得分:0)

在(比方说)F2刚刚放

=B2

并在G2中放入

=C2

然后在F3

=ArrayFormula(IF((ROW()-MAX(ROW(F$2:F2)*(F$2:F2<>"")))<COUNTIF(B$2:B$10,INDEX(F$2:F2,MAX(ROW(F$2:F2)*(F$2:F2<>""))-ROW(A$1),0)),"",INDEX(B$2:B$10,MATCH(0,COUNTIF(F$2:F2,B$2:B$10),0))))

和G3

=ArrayFormula(INDEX(C$2:C$10,SMALL(IF(B$2:B$10=INDEX(F$2:F3,MAX(ROW(F$2:F3)*(F$2:F3<>""))-ROW(A$1),0),ROW(B$2:B$10)-ROW(A$1)),ROW()-MAX(ROW(F$2:F3)*(F$2:F3<>""))+1),0))

然后拉下来。

enter image description here