Σ表格公式学堂EXCEL FORMULA & SCENARIO
进阶条件格式与标记 · 1 个 Sheet

合同/账款到期提醒(30 天内标红)

离到期不到 30 天的,自动标红提醒。

1

场景背景

合同台账里记着签订日期和期限,需要一眼看出哪些快到期了。做法分两层:先用 EDATE 算出到期日、用 TODAY 算剩余天数;再用 IF/IFS 打上「已到期 / 即将到期 / 正常」标签。想要颜色,把标签列做成条件格式即可。

2

数据结构

共 1 个 Sheet
Sheet:合同台账
字段含义示例值
签订日期起始日2024-01-31
期限(月)合同时长12
到期日EDATE 计算=EDATE(C2,D2)
剩余天数到期日 - 今天=E2-TODAY()
状态IFS 分级即将到期
3

解决步骤

1
第 1 步:算出到期日
签订日期 + 期限月数,EDATE 会自动处理大小月和月末对齐。
=EDATE(C2,D2)
2
第 2 步:算剩余天数
到期日减今天,负数表示已经过期。单元格格式设成常规或数字,别设日期。
=E2-TODAY()
3
第 3 步:用 IFS 打标签
小于 0 已到期、小于等于 30 即将到期、其余正常。条件从严到宽。
=IFS(G2<0,"已到期",G2<=30,"即将到期",TRUE,"正常")
4
第 4 步:加条件格式变色
选中整行 → 开始 → 条件格式 → 新建规则 → 使用公式:=$H2="即将到期",设成浅红底;"已到期"设成深红底加白字。
4

完整公式与逐段拆解

=IFS(G2<0,"已到期",G2<=30,"即将到期",TRUE,"正常")
G2<0,"已到期"剩余天数为负,说明已经过期
G2<=30,"即将到期"一个月内到期,需要提前处理
TRUE,"正常"兜底条件,永远成立,防止 #N/A
5

多 Sheet 示例

在编辑器中打开 ↗
ABCDEFGH
1合同号客户签订日期期限(月)到期日金额剩余天数状态
2HT-001甲公司2024-01-31122025-01-31120000-636已到期
3HT-002乙公司2024-06-1562024-12-1556000-683已到期
4HT-003丙公司2023-12-01242025-12-01240000-332已到期
5HT-004丁公司2024-03-20122025-03-2088000-588已到期
当前表:合同台账 · 公式单元格 H2 · 绿色底为公式,蓝色底为动态数组溢出结果

台账 H 列自动标出状态,G 列是剩余天数

6

数据流向

数据流向演示1 / 4
来源合同台账!C2:D2
➜
去向EDATE
签订日期 + 期限
来源EDATE
→
去向E2
得到到期日
来源E2-TODAY()
→
去向G2
减今天得剩余天数
来源G2
→
去向H2
IFS 分级打标签
跟着高亮一步步看数据怎么流动
7

注意事项与坑

!剩余天数列被误设成日期格式,会显示成 1900 年,改成常规即可。
!TODAY() 每天变,文件要每天打开才会更新提醒。
!IFS 需要 Excel 2019+,老版本用嵌套 IF。
8

相关场景