Excel sumifs公式中的条件

Excel sumifs公式中的条件,excel,formula,sumifs,Excel,Formula,Sumifs,我的工作簿股票中的主要工作表包含每日股票交易活动的信息: 我已经创建了一份名为《每月佣金》的新工作表,我希望从中按月获得佣金数据(股票页面上的L列): 我曾尝试使用SUMIFS公式,但这不起作用。这可能是由于列出日期的方式不同(主要股票表上的标准日期格式,2018年9月5日等),而屏幕截图显示了新工作表上的月份和年份。我还包括了一个我尝试使用的sumifs示例 =SUMIFS(股票!L:L,股票!A:A,月佣金!A3,股票!A:A,“>=2018年1月10日”,股票!A:A,”我相信你是对的

我的工作簿
股票
中的主要工作表包含每日股票交易活动的信息:

我已经创建了一份名为《每月佣金》
的新工作表,我希望从中按月获得佣金数据(股票页面上的
L列
):

我曾尝试使用SUMIFS公式,但这不起作用。这可能是由于列出日期的方式不同(主要股票表上的标准日期格式,2018年9月5日等),而屏幕截图显示了新工作表上的月份和年份。我还包括了一个我尝试使用的sumifs示例


=SUMIFS(股票!L:L,股票!A:A,月佣金!A3,股票!A:A,“>=2018年1月10日”,股票!A:A,”我相信你是对的,问题来自日期格式。但不仅仅是

编辑:

在您的示例中,电子表格命名不正确,而不是:

每月佣金!A3

你应该:

“月佣金”!A3

编辑2:

确保公式的逻辑也有意义。在您给出的示例中,需要满足的条件如下:

  • 等于2018年11月1日
  • 大于或等于2018年10月1日
  • 更新或等于2018年10月31日
  • 这将始终返回0,因为没有可能匹配所有三个条件的日期

    编辑前

    公式中出现了第一个格式问题。若要解决此问题,请使用函数“DATEVALUE”:

    另一个不需要使用辅助列的解决方案是利用sumproduct功能。它可以像sumifs一样工作:

    =SUMPRODUCT((Equities!L:L)*(DATEVALUE(Equities!L:L)='Monthly Commission'!A3)*(DATEVALUE(Equities!L:L)>=DATEVALUE("1/10/2018"))*(DATEVALUE(Equities!L:L)<=DATEVALUE("31/10/2018")))
    

    =SUMPRODUCT((Equities!L:L)*(DATEVALUE(Equities!L:L)='Monthly Commission'!A3)*(DATEVALUE(Equities!L:L)>=DATEVALUE(“2018年10月1日”)*(DATEVALUE(Equities!L:L)我建议使用a代替。按月汇总(或按任何其他字段或日期部分汇总)是透视表的用途。您好@ashleedawg。工作表中涉及的数据不断更新,因此我不确定透视表是否是最可行的方法。月度佣金单元格A3中有什么?@XORLX您好,它是月/年,10月18日。实际的(1)单元格值和(2)是多少该条目的单元格格式?您好@GPTV,谢谢您的建议。我已经尝试过了,但不幸的是到目前为止运气不佳。带有DATEVALUE的公式没有返回任何结果,SUMPRODUCT方法给我一个#VALUE!输出。另外,每当我输入公式excel提示我打开文件时,有人知道这是为什么吗?@NHure92”每当我输入公式时,excel会提示我打开一个文件”。这是因为“工作表名称”"这是无效的,我之前没有注意到这个错误。请参阅我上面回答中的编辑。谢谢,它不再提示我打开文件。但是,SUMIF建议和SUMPRODUCT方法都会继续返回#VALUE!@NHure92我没有考虑你的表限制,但考虑到这一点应该会对你有所帮助。例如,你的权益表st第2行的arts,假设它在第XXX行结束(您的资产负债表的最后一个非空行),您应该将所有的“L:L”替换为“$L$3:$L$XXX”。同时查看我对条件的编辑。
    
    =SUMIFS(Equities!L:L,Equities!O:O,'Monthly Commission'!A3,Equities!O:O,">=" & DATEVALUE("1/10/2018"),Equities!O:O,"<=" & DATEVALUE("31/10/2018"))
    
    =DATEVALUE(L)
    
    =SUMPRODUCT((Equities!L:L)*(DATEVALUE(Equities!L:L)='Monthly Commission'!A3)*(DATEVALUE(Equities!L:L)>=DATEVALUE("1/10/2018"))*(DATEVALUE(Equities!L:L)<=DATEVALUE("31/10/2018")))