首页 > 解决方案 > 根据另一个表excel中的值替换列的文本

问题描述

如何根据来自不同表的预定义值制定更改列中的文本?

  A   |  B     |  C
Office| Initial| Value
------|--------|-------
W     |  E     | Excel
E     |  Po    | Powerpoint
Po    |  W     | Word

我该如何表述Column A,如果我写W,它会自动替换为Word,如果我写Po,它将被替换为'Powerpoint'?

我已经寻找了一段时间,但无法找出正确的方法来制定它。我该如何为它编写函数?

标签: excel

解决方案


如果要查找 A1 中的条目与 C 列中的值的部分匹配,并在 B 列中显示结果,请在 B 列中使用此公式:

=INDIRECT(ADDRESS(MATCH($A1&"*",$C:$C,0),COLUMN($C$1)))

(注意:我使用“COLUMN(C1)”而不是“3”,这样它就可以在移动、复制、插入列等情况下幸存下来)

为了理智,当搜索词为空时,您可以避免搜索:

=IF(ISBLANK($A1),"",INDIRECT(ADDRESS(MATCH($A1&"*",$C:$C,0),COLUMN($C$1))))

结果:

  A  |B          |C
1 Po |Powerpoint |Excel
2 Ph |Photoshop  |Powerpoint
3 P  |Powerpoint |Word
4 Ex |Excel      |Photoshop
5 Ed |#N/A       |

推荐阅读