Excel formula 基于2次查找获取列中的最大数量

Excel formula 基于2次查找获取列中的最大数量,excel-formula,Excel Formula,我需要一个公式来: 在其自己的列中查找最大的# 仅当满足第1列和第2列中的条件时 将1添加到找到的数字中,并将其插入单元格 换句话说,我想“过滤”我的列表中第1列有X,第2列有Y的行 然后从这些行的第3列中获取最大的数字 然后在该数字上加1。这可以通过数组公式实现: {=MAX(IF(($A$1:$A$1000="x")*($B$1:$B$1000="y"),$C$1:$C$1000))+1} 输入: =MAX(IF(($A$1:$A$1000="x")*($B$1:$B$1000="y"),

我需要一个公式来:

  • 在其自己的列中查找最大的#

  • 仅当满足第1列和第2列中的条件时

  • 将1添加到找到的数字中,并将其插入单元格

  • 换句话说,我想“过滤”我的列表中第1列有X,第2列有Y的行 然后从这些行的第3列中获取最大的数字


    然后在该数字上加1。

    这可以通过数组公式实现:

    {=MAX(IF(($A$1:$A$1000="x")*($B$1:$B$1000="y"),$C$1:$C$1000))+1}
    
    输入:

    =MAX(IF(($A$1:$A$1000="x")*($B$1:$B$1000="y"),$C$1:$C$1000))+1
    
    然后[Ctrl]+[Shift]+[Enter]创建一个数组公式。 那么,公式周围应该自动有花括号

    问候

    Axel的MAXIF()功能的标准(非数组)等效项如下所示:

    =MAX(INDEX(C2:C999*(A2:A999="X")*(B2:B999="Y"),,))+1
    
    加上你的条件,把100加到小于100的数字上

    =MAX(INDEX((C2:C999+(C2:C999<100)*100)*(A2:A999="X")*(B2:B999="Y"),,))+1
    

    =MAX(INDEX)((C2:C999+)(C2:C999Hi Alex,谢谢你的回答,但这似乎不起作用。我在公式中收到一条错误消息,但是,我想再提一件事:如果最大值<100,那么不是加1,而是加101谢谢你得到的错误是什么?你会得到一个“不可用”错误,如果if条件
    ($A$1:$A$1000=“x”)*($B$1:$B$1000=“y”)
    内的范围大小不相等。例如
    if($A$1:$A$1000=“x”)*($B$1:$B$100=“y”),…)
    将抛出此错误。嗨,Axel。感谢您的回复。我不记得错误是什么-它不是“不可用”尽管如此。最后,我离开了这个方法,因为我意识到我遇到了一个不同的问题,那就是循环引用。你的问题不清楚。发布一些示例数据,以及你想要得到的结果。然后人们可能会帮助你。另外,因为这看起来像一个Excel问题,可能是一个更好的问题。再次,不要忘记当你在那里发帖时,请参考我之前的建议。这个问题似乎离题了,因为它是一个“给我代码”的问题。你可能应该这样做。
    =AGGREGATE(14, 6, $C$2:$C$99/(($A$2:$A$99="X")*($B$2:$B$99="Y")), 1)
    =AGGREGATE(14, 6, ($C$2:$C$99+($C$2:$C$99<100)*100)/(($A$2:$A$99="X")*($B$2:$B$99="Y")), 1)