Excel用自定义不等范围替换数字

时间:2013-12-23 16:16:35

标签: excel

假设我有以下数据

  Name    Output
   A        0.1
   B         7
   C         0.4
   D        0.9
   E        1.1
   F        12
   G        22

我想用自定义范围替换输出变量:

  Name    Output   Output_2
   A        0.1       0m-0.3m
   B        7         6y-10y
   C        0.4       0.4m-0.6m
   D        0.9       0.7m-1y
   E        1.1        1y-5y
   F        12        11y-20y
   G        22        21y-40y

现在,我正在这样做(一长串嵌套的IF)

=IF([@Tenor]<= 0.25, "0m-3m", IF([@Tenor]<=0.5, "4m-6m", IF([@Tenor] <= 1, "7m-1y",IF([@Tenor]<=5,"2y-5y",IF([@Tenor]<=10,"6y-10y",IF([@Tenor]<20,"11y-20y",IF([@Tenor]<40,"20y-40y")))))))

并且它有效但我担心随着范围的数量增加,这将是痛苦的写。我希望我可以在某个地方写下一个范围,然后让excel查找并做一些类型的事情。

1 个答案:

答案 0 :(得分:2)

我们假设您的前三列是 A B C (就像您发布的第二个代码块一样)。将以下数据添加到 E F 列中(这将是您的映射数据):

Output   Output2
0        0m-3m
0.25     4m-6m
0.5      7m-1Y
1        2y-5y
5        6y-10y
10       11y-20y
20       20y-40y
40       20y-40y

然后将以下公式写入 C2 单元格并向下拖动:

=INDEX($F:$F,MATCH(B2,$E:$E,1))

更新:您可以使用近似VLOOKUP更简单地执行此操作:

=VLOOKUP(B2,$E:$F,2,1)