Excel:计算不同个人在多个date范围内发生的天数的公式
我正在尝试开发一个Excel公式,它允许我计算两个date范围内发生的不同个人的天数。 以下是我的数据集示例:
id admDt sepDt admDur id dxDt-1 dxDt admDurTot 1 16/01/2000 18/01/2000 2 1 24/01/2000 24/02/2000 28 1 22/01/2000 18/02/2000 27 2 30/03/2000 30/04/2000 0 1 20/02/2000 22/02/2000 2 3 3/02/2000 3/03/2000 0 1 24/02/2000 28/02/2000 4 4 31/12/1999 31/01/2000 0 5 19/05/2000 20/06/2000 32 5 20/05/2000 20/06/2000 31 8 25/12/1999 28/12/1999 3 6 13/11/2000 13/12/2000 0 8 18/01/2000 26/01/2000 8 7 14/04/2000 14/05/2000 0 8 28/01/2000 28/01/2009 3288 8 23/12/1999 23/01/2000 9 9 9/02/2000 9/03/2000 0
对于AD列,每行反映一个事件(在这种情况下,医院入院):
-
id
=个人的身份证号码 -
admDt
=入学date -
sepDt
=卸货date -
admDur
=入场时间(以天计)
请注意,多行可以涉及一个人 (例如, A2:E5
)。
对于FI列,每行都反映一个人的数据:
-
id
=个人的身份证号码 -
dxDt-1
=诊断前一个月的date -
dxDt
=诊断date -
admDurTot
=入场时间(天数)
每个入场( admDt
和sepDt
)和个人( dxDt-1
和dxDt
)的date范围可以不同。 虽然每个事件的date范围可能跨越几个月(例如,单元格A3:C3
或A9:C9
),但我有兴趣计算在诊断前一个月( admDurTot
)在诊断前的天数( dxDt
) 。 请注意, admDurTot
中的值 反映了我希望获得的值,而不是从我使用的不同公式获得的值 。
我已经尝试了SUMIFS
公式的变体:
- = SUMIFS($ D:$ D,$ A:$ A,$ G2,$ B:$ B,“> =”&$ H2,$ C:$ C,“<=”&$ I2)
- = SUMIFS($ D:$ D,$ A:$ A,$ G2,$ B:$ B,“<=”&$ I2,$ C:$ C,“> =”&$ H2)
- = SUMIFS($ D:$ D,$ A:$ A,$ G2,$ B:$ B,“> =”&$ H2,$ C:$ C,“>”&$ H2,$ C:$ C ,“<=”&$ I2)
然而,他们被这样一个事实所困惑,即他们经常不在所关心的范围之内(即他们不在dxDt-1
和dxDt
)。 例如,在个人1
的情况下,上述公式表明他在诊断前一个月在医院呆了33天。 实际上,他在这段时间里住了28天。
我发现在其他网站很less指导。 我已阅读以下链接; 不过,我不熟悉C#。
计算按月分隔的两个date之间的天数
任何援助将不胜感激!