我在Excel中有一列包含不同值的数据。我正在寻找一个公式或宏来区分不同类型的数据。例如,我有一个数值=VLOOKUP(E2,TECH!B:F,4,FALSE)
的VLOOKUP,但这仅适用于某些值。
例如,当它在列中列为4位数字扩展名时,将返回E2的值。一些数据点被列为“i78990”或“n65778”等。当“i”在数字之前时我想返回“芝加哥”的值,如果“n”在数字之前则返回“亚特兰大”,等
答案 0 :(得分:0)
使用“LEFT”功能以获得如下:LEFT(E2,1)获取第一个字母(您可以将其应用于所有单元格),将结果存储在不同的列上并执行Vlookup从那里。
有关从文本中分隔数字的更一般情况,您可以使用以下算法:
- 将字母数字字符串分成单独的字符。
use: MID(A1,ROW($1:$9),1)
- 确定分解后的字符串中是否有数字。
use: ISNUMBER(1*MID(A1,ROW($1:$9),1))
- 在字母数字字符串中确定数字的位置。
use: MATCH(TRUE,ISNUMBER(1*MID(A1,ROW($1:$9),1)),0)
计算字母数字字符串中的数字。
use =OUNT(1*MID(A1,ROW($1:$9),1))
或作为一个整体:
MID(A1,MATCH(TRUE,ISNUMBER(1 * MID(A1,ROW($ 1:$ 9),1)),0),COUNT(1 * MID(A1,ROW($ 1:$ 9),1) ))
您可以在以下link中看到一个示例。