如何列出张三所生儿子并用顿号(、)连接?

如上图所示,如何使用Excel表,并给定条件为A=张三,B=女,将得出的姓名用顿号(、)连接,得出F1单元格输出:张雪、张倩、张颖。

我用TEXTJOIN,但是不知道应该用哪个lookup。
谢谢!

用这个工具来做应该会非常简单

1 Like

需要构造辅助列

helper
=C2&D2

helper2
=B2&COUNTIF($B$2:B2,B2)

results
=TEXTJOIN("、",TRUE,IFERROR(VLOOKUP(I1&I2&ROW(A1:A6),A1:E6,5,FALSE), ""))

思路:先用字符串连接,让VLOOKUP可以只比对一个值;然后用COUNTIF给满足同一个条件的行不同的行编号;最后让VLOOKUP查询所有可能的行编号,过滤掉N/A,再拼接。

参考: Excel VLOOKUP For Multiple Results | Coupler.io Blog

不过感觉或许你应该考虑用数据透视表/数据库软件来做这种操作…

3 Likes

select c3 from csv where c1=‘张三’ and c2=‘男’

2 Likes

可以在当前工作簿的其他表格中运行SQL查询


类似4楼.

4 Likes

真想不到 Excel 高手也这么多

1 Like

一开始想到的也是sql,但用excel的人都乐于用公式

1 Like

我也是想用个什么公式就解决问题的。

一行公式搞定:=TEXTJOIN("、",1,FILTER(C:C,(A:A="张三")*(B:B="女")))

不过 FILTER 公式需要 Excel 2019 或 365 才能用……

6 Likes

谢谢!!!

我用WPS 表格也可以完美运行,谢谢啦!