如上图所示,如何使用Excel表,并给定条件为A=张三,B=女,将得出的姓名用顿号(、)连接,得出F1单元格输出:张雪、张倩、张颖。
我用TEXTJOIN,但是不知道应该用哪个lookup。
谢谢!
用这个工具来做应该会非常简单
需要构造辅助列
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
不过感觉或许你应该考虑用数据透视表/数据库软件来做这种操作…
select c3 from csv where c1=‘张三’ and c2=‘男’
真想不到 Excel 高手也这么多
一开始想到的也是sql,但用excel的人都乐于用公式
我也是想用个什么公式就解决问题的。
一行公式搞定:=TEXTJOIN("、",1,FILTER(C:C,(A:A="张三")*(B:B="女")))
不过 FILTER
公式需要 Excel 2019 或 365 才能用……
谢谢!!!
我用WPS 表格也可以完美运行,谢谢啦!