复制一个嵌套的if函数

我创build了一个嵌套的if函数在一个单元格中工作,但是当我将它拖放到同一列中的不同单元格时,它开始生成我不想要的奇怪结果。

= IF(F2 = 4,G515,IF(F2 = 5,G514,IF(F2 = 6,G514,IF(F2 = 7,G513,IF(F2 = 8,G513,IF(F2 = 9,G512,IF (F2 = 10,G512,IF(F2 = 11,G511,IF(F2 = 12,G511,IF(F2 = 13,G510,IF(F2 = 14,G510,IF(F2 = 15,G509,IF(F2 = 16,G509,IF(F2 = 17,G508,IF(F2 = 18,G508,IF(F2 = 19,G507,IF(F2 = 20,G507,IF(F2 = 21,G506,IF(F2 = 22 ,G505,IF(F2 = 23,G505,IF(F2 = 24,G504,IF(F2 = 25,G504,IF(F2 = 26,G503,IF(27,G502,IF(F2 = 28,G502,IF (F2 = 29,G501,IF(F2 = 30,G501,IF(F2 = 31,G500,IF(F2 = 32,G499,IF(F2 = 33,G499,IF(F2 = 34,G498,IF(F2 = 35,G498,IF(F2 = 36,G497)))))))))))))))))))))))))))))))))

就是这样,我想要的是F3,F4,F5等。

任何帮助?

尝试使用美元符号$修复公式引用

这篇文章可以帮助

当您向下或向下拖动X个单元格时,公式中的所有参考将向下移动X或向下移动。 为防止出现这种情况,请将不希望更改的引用的元素前缀为$ 。 例如:

  • F2 :公式移动时将改变参考的行列。
  • $F2 :公式被移动时只会改变行。 该列将始终保持F
  • F$2 :当公式被移动时只会改变列。 该行将始终保持2
  • $F$2 :无论公式被移动到哪里,都将始终保持F2

即使用G$ s代替G s,公式仍可能会给出意想不到的结果,因为...IF(27,G502,IF(F2=28...是不正确的语法。

= IF(F2 = 4,G $ 515中,IF(OR(F2 = 5,F2 = 6),G $ 514中,IF(OR(F2 = 7,F2 = 8),G $ 513 IF(F2 = 9,G $ 512个,IF(OR(F2 = 10,F2 = 11),G $ 511 IF(OR(F2 = 12,F2 = 13),G $ 510中,IF(F2 = 14,G $ 510中,IF(OR(F2 = 15, F2 = 16),G $ 509 IF(OR(F2 = 17,F2 = 18),G $ 508中,IF(OR(F2 = 19,F2 = 20),G $ 507 IF(F2 = 21,G $ 506 IF (OR(F2 = 22,F2 = 23),G $ 505 IF(OR(F2 = 24,F2 = 25),G $ 504中,IF(F2 = 26,G $ 503中,IF(OR(F2 = 27,F2 = 28)中,G $ 502中,IF(OR(F2 = 29,F2 = 30),G $ 501中,IF(F2 = 31,G 500 $,IF(OR(F2 = 32,F2 = 33),G $ 499,IF(OR (F2 = 34,F2 = 35),G $ 498 IF(F2 = 36,G $ 497))))))))))))))))))))

是一个正确的语法和美元符号的修订版本,但仍然比你的版本稍短,通过使用OR,并应按照预期复制。

如果你能确定只有337之间的整数值会填充F2等,那么其中一个IF语句是多余的。

如果您可以创build一个类似于此的数组(其中“G”数字表示单元格中的值):

SO20872551的例子

一个较短的公式应该是足够的:

 =IF(ISEVEN(F2),VLOOKUP(F2,$F$497:$G$515,2,0),VLOOKUP(F2,$E$497:$G$515,3,0)) 

尝试使用select公式,并使范围named.hope它有帮助