【发布时间】:2013-04-26 23:48:58
【问题描述】:
我有一列不统一的几千个文件名。例如:
| Column A | Column B |
===============================
| junk_City1_abunc | City1 |
-------------------------------
| nunk_City1_blahb | City1 |
-------------------------------
| small=City2_jdjf | City2 |
-------------------------------
| mozrmcity3_somet | City3 |
我想在 A 列的文本中识别城市并在 B 列中返回它。
我想出了一个复杂的公式来解决这个问题,但是如果在 A 列中的新条目的文件名中添加更多城市,则很难调整。
这是一个例子:
=IF(ISNA(MATCH("*"&$W$3&"*",I248,0)),IF(ISNA(MATCH("*"&$W$4&"*",I248,0)),IF(ISNA(MATCH("*"&$W$5&"*",I248,0)),IF(ISNA(MATCH("*"&$W$6&"*",I248,0)),IF(ISNA(MATCH("*"&$W$7&"*",I248,0)),IF(ISNA(MATCH("*"&$W$8&"*",I248,0)),"Austin","Orlando"),"Las Vegas"),"Chicago"),"Boston"),"Las Angeles"),"National")
似乎应该有一个更简单的方法来做到这一点,但我就是想不通。
(更糟糕的是,我不仅要在文件名中识别城市,还要寻找其他属性来填充其他列)
谁能帮忙?
【问题讨论】:
-
有两种不同的方法。第一个是识别像“_”和“=”这样的分隔符,如果它们遵循一个顺序并得到中间的字符串(城市)。第二个将是包含所有现有城市的另一列,并检查 A 列中是否存在一个
-
为了清楚起见,您想检查每个单元格(在 A 列中)以查看它是否包含您的城市列表中的值之一,如果您希望在 B 列中使用该值?
-
Las Angeles->Los Angeles -
我的问题可能重复Here
-
@SvenRojek 即使在这个只有 4 个的小列表中(问题指出有数千个),您已经遇到了
mozrmcity3_somet的问题,因为它没有完全分离,而只是后分离。我们不知道其余的看起来如何。根据这个示例,我们最好解析数字 + 左边 4 个字符,但这会有很多漏洞。
标签: excel excel-formula