如何在Google Sheets中用=TODAY()自动计算列剩余天数并排序
问题与解决方案
当前表格状态
| A | B | C |
|---|---|---|
=today() | 01/25/25 | 5 |
预期输出表格
| 1/20/2025 | 到期日期(Due Date) | 剩余天数(Days Until) | 事件(Events) |
|---|---|---|---|
| 1/21/25 | 1 | ||
| 1/23/25 | 3 | ||
| 1/23/25 | 3 |
需求说明
需要实现两个功能:
- 在B列输入到期日期时,C列自动计算剩余天数(逻辑为「到期日期 - A1单元格的当前日期」)
- 表格自动按C列剩余天数从低到高排序
表格结构:
- A1:
=today()(显示当前日期) - B1:到期日期(Due Date)
- C1:剩余天数(Days Until)
- D1:事件(Events)
- A2及以下无数据;B列单元格为
00/00/00格式的日期
当前问题:无法设置C列实现自动计算剩余天数。
解决方案
一、设置C列自动计算剩余天数
- 确认A1格式:右键A1单元格,选择「设置单元格格式」→「日期」,确保
=TODAY()正确显示当前日期。 - 输入C列公式:选中C2单元格,输入公式:
=IF(B2="","",B2-$A$1)$A$1是绝对引用,下拉公式时始终指向A1的当前日期;IF(B2="","")确保B列空单元格时C列不显示错误值。
- 批量应用公式:鼠标移到C2单元格右下角,光标变成十字形后按住左键下拉,公式会自动复制到C3、C4等后续单元格。
- 调整C列格式:若C列显示为日期而非数字,右键C列→「设置单元格格式」→「数值」,小数位数设为0,即可显示整数剩余天数。
二、设置表格自动按剩余天数排序
适用于Excel:
- 选中整个数据区域(含表头A1:D1及下方数据行),点击「插入」选项卡→「表格」,勾选「我的表格有标题」后确定。
- 点击C列表头右侧的下拉箭头,选择「升序」,后续新增或修改B列日期时,表格会自动按剩余天数从低到高排序。
适用于Google Sheets:
- 选中数据区域,点击「数据」→「创建筛选视图」。
- 点击C列表头的筛选图标,选择「排序A到Z」(升序),表格会自动维持按剩余天数排序的状态。
内容的提问来源于stack exchange,提问作者Bradley B. Clark
相关产品推荐
相关产品推荐

