Sumif Excel函数错误

我试图计算一个员工加class的日子; 但是function不断给出错误的function。 我search后使用(;)而不是(,); 但仍然不断收到错误。

function:

=SUMIFS(LeaveTracker[Days],LeaveTracker[Employee Name],valSelEmployee,WEEKDAY(LeaveTracker[Start Date]),">5",WEEKDAY(LeaveTracker[End Date]),">5",LeaveTracker[Type of Leave],'Leave Types'!B8) 

错误消息:您键入的公式包含错误。

正如我在我的评论中写的, criteria_range参数需要是范围。 您有两个不是: WEEKDAY(LeaveTracker[Start Date])WEEKDAY(LeaveTracker[End Date])不返回范围。 他们返回星期几数字的数组。 因此你的错误。

您可以添加两个帮助者列,其中只包含引用开始date和结束date的Weekday数字,然后将这些列用于criteria_range以代替您拥有的数据。

因此,添加一个名为StartWeekDay的列,公式为: =WEEKDAY([@[Start Date]]) StartWeekDay =WEEKDAY([@[Start Date]]) ,同样添加一个名为EndWeekDay的列

那么你可以使用SUMIFS

 =SUMIFS(LeaveTracker[Days],LeaveTracker[Employee Name],valSelEmployee,(LeaveTracker[StartWeekDay]),">5",(LeaveTracker[EndWeekDay]),">5",LeaveTracker[Type of Leave],'Leave Types'!B8) 

或者你可以使用SUMPRODUCT函数,它可以在你现有的数据上执行这个逻辑而不需要帮助列。

 =SUMPRODUCT(LeaveTracker[Days]*(LeaveTracker[Employee Name]=valSelEmployee)*(WEEKDAY(LeaveTracker[Start Date])>5)*(WEEKDAY(LeaveTracker[End Date])>5)*(LeaveTracker[Type of Leave]='Leave Types'!B8)) 

SUMIFS的语法是:

 SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...) 

如果:

LeaveTracker [Days]是sum_range和

LeaveTracker [员工姓名]是criteria_range

valSelEmployee是什么?

根据语法,它应该是第一个标准。 它是否包含要search的员工名称? 如果是这样,它应该有一个操作符(=,>等)