我有一个公式,可以动态更新给定日期范围内的工作日数(用户可以根据其过滤)。我正在尝试在公式中添加一个步骤/过滤器,以检查员工在给定的一天是否有任何单位。如果他们没有单位,则假设他们有休息日(请病假,休假等),因此不计入他们的每日平均值。
这是我当前的公式:
# of Days Worked =
VAR minDate =
MIN ( 'Calendar'[Date] )
VAR maxDate =
MAX ( 'Calendar'[Date] )
RETURN
CALCULATE (
COUNT ('Calendar'[Date]),
FILTER (
'Calendar',
NOT ( 'Calendar'[Date] > maxDate
|| 'Calendar'[Date] < minDate )
&& 'Calendar'[IsBusinessDay] = TRUE()
)
)
我认为我可以在businessday = TRUE行之后添加&& COUNT('DataTable'[Unit])> 1,但这不会影响结果。
预期结果示例:
将日期切片器过滤为4/28-5/3。这是6个日历日,但是一天是星期日(非工作日)。 目前,上述公式返回5作为工作天数,因为它不包括周日-这是正确的。
但是,假设我当时有3名员工;约翰,辛迪和汤姆。约翰今天有1个单位,辛迪今天有2个单位,汤姆有0个单位(他病了)。我需要公式来说明约翰和辛迪都在这个范围内工作了5天,而汤姆只工作了4天。
预先感谢您的帮助。