Excel表计算当月天数

我需要完成以下任务:

根据住户入住日期计算他当月入住天数。
入住日期 搬迁日期 当月入住天数
A 2008/11/01 30
B 2007/08/09 2009/08/20 20
C 2009/08/03 2009/08/16 14

这里有三种情况:A 是很早以前(当月以前)搬入的,本月也没搬出,当月按30天算。
B 是很早以前(当月以前)搬入的,本月搬出,当月按实住天数计算。
C 是本月入住的,本月又搬出了,用搬出日期减去搬入日期计算实住天数。

注意:不能写三句话(这我自己都会写了),而是要在一个格子里遇到上述三种情况分别对待,即用IF语句嵌套三次。

下面以计算2012年6月的天数为例来介绍操作方法:

    方法:

    在A1单元格输入年份2012

    在B1单元格输入文字"年"(不是必须的)

    在C1单元格输入月份6

    在D1单元格输入文字"月"(不是必须的)

    在F1单元格输入文字"本月共计"(不是必须的)

    在G1单元格输入公式=DAY(DATE(A1,C1+1,1)-1)

    在H1单元格输入文字"天"(不是必须的)

    至此就可以了,只要A1与C1单元格中的年月改变,G1单元格中就可以实时显示那个月份的总天数。


温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2020-01-06
就你的数据位置,大概是:第1行是标题,数据从第2行起;A列=入住日期、B列=搬迁日期、C列=当月入住天数。在C2输入
=IF(AND(A2<(TODAY()-30),B2=""),30,IF(AND(A2<(TODAY()-30),B2<>""),INT(TEXT(B2,"DD")),IF(AND(A2>(TODAY()-30),B2<>""),B2-A2+1,"")))回车并向下填充。本回答被提问者采纳
第2个回答  2009-08-17
不知道你原先怎么写的,反正你会,就写个套嵌格式吧=if(a(当月以前)搬入的,30,if(b当月以前)搬入的,实际天数,if(c是本月入住的本月又搬出了,自己减,"")))
类似与=IF(A7="a",1,IF(A7="b",1,IF(A7="c",1,"")))
第3个回答  2009-08-17
这么简单的问题别你们俩翻来覆去的写汉字,我都直接晕死算了。
第4个回答  2009-08-17
想到方法了,吃完饭来写公式。先占个座。
相似回答