将两列关联分配给第三列

时间:2014-06-26 04:34:51

标签: excel

我在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取代。 我很难做到这一点请指导我怎么做?

2 个答案:

答案 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))

但是,这不使用列作为数据源,它纯粹是硬编码的。如果你想要一个通用的答案,你需要澄清你的问题。