Typ*_*101 4 lookup excel excel-formula textjoin
我需要搜索一行单元格,并且对于包含特定值的每个单元格,从上面的单元格返回值.
例如,请考虑以下内容
+---+--------+--------+--------+--------+--------+----------+
| | A | B | C | D | E | F |
+---+--------+--------+--------+--------+--------+----------+
| 1 | UK | DE | FR | HK | TW | |
+---+--------+--------+--------+--------+--------+----------+
| 2 | YES | | YES | YES | | |
+---+--------+--------+--------+--------+--------+----------+
| 3 | | YES | | YES | YES | |
+---+--------+--------+--------+--------+--------+----------+
| 4 | YES | | | YES | | |
+---+--------+--------+--------+--------+--------+----------+
Run Code Online (Sandbox Code Playgroud)
所以我想在细胞F2,F3和F4中插入一个公式,这将给出以下结果
F2 = UK,FR,HK
F3 = DE,HK,TW
F4 = UK,HK
Run Code Online (Sandbox Code Playgroud)
可以这样做吗?
谢谢
小智 7
我找到了一个简单,可扩展的解决方案,它使用数组公式来连接满足特定条件的多个单元格.
应用于您的示例,粘贴到单元格F2:
=TEXTJOIN(",", TRUE, IF(B3:F3 = "YES", B$2:F$2, ""))
Run Code Online (Sandbox Code Playgroud)
然后点击ctrl + shift + enter作为数组公式输入,并复制单元格F3-F4.
其作用的原因留给读者练习.这很清楚,但我更喜欢"魔术".
我希望这可以帮助任何有类似问题的人.
在 F2 中复制粘贴此公式:
=CONCATENATE(IF($A2="YES",A$1&",",),IF($B2="YES",B$1&",",),IF($C2="YES",C$1&",",),IF($D2="YES",D$1&",",),IF($E2="YES",E$1&",",))
Run Code Online (Sandbox Code Playgroud)
并向下拖动到该列。
解释:
IF($A2="YES",A$1&",",)
IF($B2="YES",B$1&",",)
IF($C2="YES",C$1&",",)
IF($D2="YES",D$1&",",)
IF($E2="YES",E$1&",",)
Run Code Online (Sandbox Code Playgroud)
上面的代码被重写了5次,并且列名也被改变了。它检查当前行中的单元格是否有“YES”。如果是,那么它将输入列的标题'A$1'
。请注意,$1 是对第一行(即标题)的绝对引用。
最后我把这五个IF
语句都用usingCONCATENATE
语句封装了。
希望这可以帮助。
归档时间: |
|
查看次数: |
33780 次 |
最近记录: |