【问题标题】:Concatenate cell values if they have a similar value in another cell如果它们在另一个单元格中具有相似的值,则连接单元格值
【发布时间】:2020-05-12 07:20:50
【问题描述】:

我需要将一个人去过的城市名称连接到另一个单元格中,但每次出现此人的名字时都必须重复它们。 我尝试使用 COUNTIF 但无法将我带到任何地方。

我不想使用 VB 代码;只是公式/函数。 有任何想法吗?

Here's the link to my spreadsheet

【问题讨论】:

  • 您的工作表目前未共享 - 您可以更改权限吗?另外,您是否在寻找 Excel 和/或 Google 表格解决方案?
  • 刚刚更改了权限。我更喜欢 Google 表格。
  • 尝试类似:=TEXTJOIN(", ",1,UNIQUE(FILTER(A:A,B:B=B2)))
  • QUERY 可能是:=TEXTJOIN(", ",1,UNIQUE(QUERY(A:B,"SELECT A WHERE B = '"&B2&"'",-1)))。这不是我的强项,但可能会将上述任何内容溢出到整个专栏。
  • @JvdV - 我不得不稍微调整一下你的公式,因为如果 B 为空,它就不能正常工作。这是我所做的: =IF(AC3 "",(TEXTJOIN(", ",1,UNIQUE(FILTER(B:B,AC:AC=AC3)))),"")

标签: google-sheets google-sheets-formula array-formulas google-sheets-query gs-vlookup


【解决方案1】:

使用:

=ARRAYFORMULA(REGEXREPLACE(IFNA(VLOOKUP(B2:B, 
 TRIM(SPLIT(TRANSPOSE(TRIM(QUERY(QUERY({A2:A&",", B2:B&"♦"},
 "select max(Col1) where Col1 <> ',' group by Col1 pivot Col2")
 ,,99^99))), "♦")), 2, 0)), ",$", ))

【讨论】:

  • 出于某种原因,当我将您的公式向下拖动以将其应用于整个列时,它给了我一个#REF!错误。
  • 它的数组公式例如。你不应该把它拖下来 - 它会自动计算所有行。只需删除 C 列中的所有内容并将公式粘贴到第二行。查看您的示例表
猜你喜欢
  • 1970-01-01
  • 2020-07-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-22
  • 1970-01-01
相关资源
最近更新 更多