拆分文本和数字,然后转换并添加数字

时间:2018-08-23 19:00:22

标签: excel

我有一系列值,例如:

10RP
2.5R
5R
7.5R
10R
2.5YR
5YR

我想根据此表将字符串部分转换为数字:

0   R
10  YR
20  Y
30  GY
40  G
50  BG
60  B
70  PB
80  P
90  RP

然后我要创建两列,以便:

2.5YR

成为:

2.5 10

在第三列中,我将两个数字加在一起。

可以仅使用公式来完成此操作吗?如果可以的话,我想避免使用VBA。

谢谢。

2 个答案:

答案 0 :(得分:3)

这是另一种方法。

seq是定义的名称,指的是数组常量={1,2,3,4,5}

如果您的数字可能包含五个以上的字符,则只需适当地扩展常数即可。

Number part:  =LOOKUP(9E+307,--MID(A1,1,seq))

Letter portion converted to number: 

    =VLOOKUP(MID(A1,LOOKUP(2,1/ISNUMBER(-MID(A1,1,seq)),seq)+1,9),$F$1:$G$10,2,FALSE)

您的表格在F1:G10中,并且位置颠倒,因此字母在第一列中

enter image description here

答案 1 :(得分:0)

这可能不是最有效的,但应该可以工作

=IFERROR((LEFT(F3,LEN(F3)-2)+VLOOKUP(RIGHT(F3,2),$A$3:$B$12,2,0)), 
         (LEFT(F3,LEN(F3)-1)+VLOOKUP(RIGHT(F3,1),$A$3:$B$12,2,0)))

在您的查找表是A3:B12的地方,最左列中的字母 在单字母组合之前检查两个字母组合。