excel合同倒计时用=if(b2="","",b2-today())计算剩余天数,正数为未到期,负数为已过期;推荐嵌套if或ifs添加“即将到期”“已过期”“正常”状态标识,today()自动刷新不可加$锁定。

在Excel中设置合同到期倒计时,需用当前日期动态减去固定到期日,结果为正数表示剩余天数,为负数说明已过期;若直接用TODAY()函数不加锁定或未处理空值,会导致公式返回错误或误导性数值。
基础倒计时公式(适用于单个合同)
第一步:选中要显示剩余天数的单元格,例如C2;
第二步:输入公式 =IF(B2="","",B2-TODAY()),其中B2是合同到期日期所在单元格;
第三步:按Enter确认,C2即显示距离到期的天数——正值为剩余天数,负值为超期天数,空白单元格则显示为空;
注意:TODAY()每次打开表格都会刷新,无需手动更新,但不能对TODAY()加$锁定,否则会报错。
带状态标识的智能倒计时(推荐批量使用)
方法一:用IF嵌套区分三种状态
在C2输入:=IF(B2="","",IF(B2
这个公式会自动判断并输出“还剩X天”“已过期Y天”或留空,避免用户误读负数。
方法二:用条件格式直观标色
选中C2:C100 → 开始选项卡 → 条件格式 → 新建规则 → 使用公式确定要设置格式的单元格;
输入公式 =AND(C2"") → 设置字体为红色;
再新建一条规则,公式 =C2=0 → 设置填充橙色底纹;
必须先确保C列公式已填好且不含错误值,否则条件格式无法生效。
防止因日期格式错误导致计算失败
检查B列日期是否被识别为真实日期:任选一个到期日单元格,右键→设置单元格格式→看分类是否为“日期”;
如果显示为“常规”或“文本”,说明Excel没把它当日期处理,此时B2-TODAY()会返回#VALUE!错误;
快速修复:选中B列 → 数据选项卡 → 分列 → 下一步→下一步→列数据格式选“日期”→完成;
这一步必须做,否则所有倒计时公式都无效。











