1

我必须确定每个专业在正常工作时间以外或周末开始的手术的总百分比。

这是我到目前为止所拥有的:

=COUNTIFS(Table1[Start surgery];">17:00")+COUNTIFS(Table1[Start surgery];"<09:00")+COUNTIFS(Table1[Surgery date];"MOD(WEEKDAY(cell), 7) <2")

前 2 个计数有效,但我无法计算周末的天数。第二件事是excel可以将某些手术计算两次,因为手术可以在17:00之后和周末进行,但必须算作一次。

谁能帮我:)?

例子

4

1 回答 1

0

由于您公式的第一部分正在工作,我刚刚修改了您公式的最后一部分......

=COUNTIFS(Table1[Start surgery];">17:00")+COUNTIFS(Table1[Start surgery];"<09:00")+SUMPRODUCT((WEEKDAY(Table1[Surgery date])=1)+(WEEKDAY(Table1[Surgery date])=7)

其中 1 和 7 相当于周六和周日。

上面公式目前的问题是1700之后和周末0900之前的手术时间被计算了两次!

为了纠正这个问题,所有条件都可以作为一种潜在的解决方案移到 sumproduct 中,你最终会得到:

=SUMPRODUCT((WEEKDAY(Table1[Surgery Date])=1)+(WEEKDAY(Table1[Surgery Date])=7)+(WEEKDAY(Table1[Surgery Date])=MEDIAN(WEEKDAY(Table1[Surgery Date]),2,6))*(Table1[Start surgery]<"09:00")+(WEEKDAY(Table1[Surgery Date])=MEDIAN(WEEKDAY(Table1[Surgery Date]),2,6))*(Table1[Start surgery]>"17:00"))

现在括号计数可能已经关闭,因为我当时没有使用 excel。我们可能遇到的另一个潜在问题是时间问题。您的时间是时间列文本还是格式化为时间显示的数字?这可能涉及将时间比较修改为不同的格式,但公式本身应保持不变。

这里的基本想法是我们将每个条件放在 sumproduct 中。该条件将评估为 TRUE 或 FALSE。如果条件经过数学运算,它将变为 1 表示 TRUE 和 0 表示 FALSE。+ 像 OR 语句一样,* 像 AND 语句一样。

于 2016-06-05T20:52:17.757 回答