Excel / openoffice Calc嵌套if语句的问题

时间:2012-10-26 14:50:32

标签: excel if-statement calc

我几乎没有在Excel中使用公式的经验,但是我正试图为那些无法让他们的宏工作的人一起破解。

基本上,我已经完成了一组数据的排序列表,需要抓住前四项。使用VLookup或索引似乎是最有意义的,但表的格式化方式(由于各种原因,我无法改变)似乎我不能让它们工作(如果我可以切换)其中的列/行定义,然后我可以,但我不确定我是否可以/如何)。所以无论如何,我已经有了这个长嵌套的if语句,我已经把它放在一起应该做的伎俩,但是它给我一个509错误的缺失元素。我已经完成了我能想到的所有事情来弄清楚发生了什么,没有运气。

所以这是:

=IF(AO2=13, D2, IF(AP2=13, E2, IF(AQ2=13, F2, IF(AR2=13, G2, IF(AS2=13, H2, IF(AT2=13, I2, IF(AU2=13, J2, IF(AV2=13, K2, IF(AW2=13, L2, IF(AX1=13, M2, IF(AY2=13, N2, IF(AZ2=13, O2, IF(BA2=13, P2, "foo")))))))))))))

其中A02 ...值是排序列表(因此索引号13对应于D2中的最高值:P2),而D2 ...是我希望它返回的相应值列表。

我想知道是否有人可以快速查看并查看是否有任何事情发生在他们身上。我敢肯定它是愚蠢的和/或结构性的,但我无法让它发挥作用。

P.S。 - 我在.xlsx文件上使用Calc,但我很确定这应该没什么区别。

1 个答案:

答案 0 :(得分:0)

我看到的第一件事是您的公式正在引用

IF(AX1=13, M2,

我确定你可能意味着:

IF(AX2=13, M2,

但是这可以变得更有效率 - 最简单的方法之一(并且有很多)将是SUMIF功能。 鉴于AO2:BA2中只有一个值等于13,您可以编写如下内容:

=SUMIF(AO2:BA2,13,D2:P2)

但是,正如我所说,有很多方法可以让你得到这个解决方案 - 这取决于你想要完成的事情......