我正在尝试开发一个Excel公式,允许我计算不同个人在两个日期范围内发生的天数。以下是我的数据集示例:
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
对于A-D列,每行反映一个事件(在这种情况下,入院):
id
=个人的身份证号码admDt
=入学日期sepDt
=出院日期admDur
=入学时间(以天为单位) 请注意,多行可以与一个人相关(例如A2:E5
)。
对于列F-I,每行反映一个人的数据:
id
=个人的身份证号码dxDt-1
=诊断前一个月的日期dxDt
=诊断日期admDurTot
=录取的总持续时间(以天为单位)每次入场(admDt
和sepDt
)和个人(dxDt-1
和dxDt
)的日期范围可能不同。虽然每个事件的日期范围可能跨越几个月(例如,单元格A3:C3
或A9:C9
),但我有兴趣计算该人在医院(admDurTot
)所用的天数。诊断前一个月(dxDt
)。 请注意 admDurTot
中的值反映了我想要获取的值,而不是从我使用的不同公式中获得的值。
我尝试了SUMIFS
公式的变体:
admDt
和sepDt
通常都不属于感兴趣的范围(即它们不在dxDt-1
和dxDt
之间)这一事实使他们感到困惑。 。例如,在个人1
的情况下,上述公式表明他在诊断前一个月内在医院度过了33天。实际上,他在那段时间里住了28天。
我在其他网站上找不到什么指导。我查看了以下链接;但是,我不熟悉C#。
Calculate number of days between two dates separated by month
非常感谢任何帮助!