Excel中日时分时长格式化及A+C计算#VALUE!错误的技术咨询
问题说明
当前Excel表格数据如下:
| A (Start) | A+C (End) | C (Duration) |
|---|---|---|
| Friday 09/02/2024 14:00 | Wednesday 14/02/2024 14:00 | 4D 00H00 |
| Wednesday 14/02/2024 14:00 | #VALUE! | 30/12/1899 03:00:00 |
其中C1对应4天时长,C2对应3小时时长。A、B列采用格式dddd dd/mm/yyyy hh:mm,C列设置了自定义格式"d"D "hh"H"mm"。但双击编辑C2并回车后,B2的结束时间计算出现#VALUE!错误,期望得到的正确结果为:
| A (Start) | A+C (End) | C (Duration) |
|---|---|---|
| Friday 09/02/2024 14:00 | Wednesday 14/02/2024 14:00 | 4D 00H00 |
| Wednesday 14/02/2024 14:00 | Wednesday 14/02/2024 18:00 | 0D 03H00 |
解决步骤
1. 修正C列的自定义格式
问题根源是C列格式设置有缺陷,双击编辑后Excel会将时长数值误识别为日期,导致显示异常且无法参与计算:
- 选中C列所有需设置时长的单元格,右键打开「设置单元格格式」
- 切换到「数字」选项卡,选择「自定义」,在类型输入框中修改为:
[d]D hh"H"mm- 加
[d]是为了让天数超过31时也能正常显示,避免被系统识别为日期
- 加
- 点击确定保存设置
2. 正确输入时长值
C2的3小时时长,不要直接输入30/12/1899 03:00:00,改用以下两种方式:
- 直接输入
0:3,回车后会自动按设置的格式显示为0D 03H00 - 或者输入公式
=3/24(Excel中1天等于1,1小时等于1/24),同样会正确显示
3. 恢复结束时间计算
B列的公式保持=A2+C2即可,只要C列存储的是正确的数值型时长,就能自动计算出正确的结束时间。如果之前B2是#VALUE!,修复C2后刷新单元格或重新输入公式就能解决。
内容的提问来源于stack exchange,提问作者SebMa
相关产品推荐
相关产品推荐

