我在Excel 2010中有以下结构
Col1 Col2 Col3
12 C.E C.E
13 D.C.E C.E
14 P.E P.E
100 A.O.H A.O.H
C.E
P.E
...
...
Output: Col3
12
12
14
100
12
14
...
...
即Col1和Col2在逻辑上是链接的,这意味着CE的值为12,DCE的值为13.我想要的是将那些关联分配给Col3,无论有多少次将被替换为CE。 12,哪里有PE,它将被14取代。 我很难做到这一点请指导我怎么做?
答案 0 :(得分:1)
如果交换前两列,可以使用VLOOKUP
函数获取与特定文本关联的值,如下所示:
Col1 Col2 Col3 Col4
C.E. 12 C.E
D.C.E 13 C.E
P.E 14 P.E
A.O.H 100 A.O.H
Col4 Cell Value = VLOOKUP(Col4Cell, $Col1$FirstRow : $Col2$LastRowWithData, 2, 0)
请注意,您无法直接替换Col3
中的值,因为这会导致循环引用 - 检查单元格中的值并替换相同的单元格!
答案 1 :(得分:0)
我认为以下公式有效:
=IF(LEN(B2)<>LEN(SUBSTITUTE(B2,"C.E",""))
,12
,IF(LEN(B2)<>LEN(SUBSTITUTE(B2,"P.E",""))
,13
,B2))
但是,这不使用列作为数据源,它纯粹是硬编码的。如果你想要一个通用的答案,你需要澄清你的问题。