You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel与PPT数值更新问题咨询:日期差值计算及演示模式联动失效

问题解决方案

方案1:修复Excel+PPT联动逻辑

Excel端TODAY函数不更新修复

  • 先确认自动计算规则开启:依次点击「文件」-「选项」-「公式」,勾选自动重算,同时确认「保存工作簿前重新计算」处于勾选状态
  • 替换被动函数逻辑,改用VBA事件强制触发更新:打开VBA编辑器(快捷键Alt+F11),双击左侧对应工作簿的ThisWorkbook,粘贴以下代码:
Private Sub Workbook_Open()
    ' 打开文件1秒后触发首次刷新
    Application.OnTime Now + TimeValue("00:00:01"), "RefreshDate"
End Sub

Sub RefreshDate()
    ' 请将下方工作表名、单元格地址替换为你实际使用的参数
    ThisWorkbook.Worksheets("Sheet1").Range("A1").Calculate
    ' 每分钟刷新一次,可自行调整时间间隔
    Application.OnTime Now + TimeValue("00:01:00"), "RefreshDate"
End Sub
  • 保存文件时选择*启用宏的工作簿(.xlsm)*格式,打开时允许宏运行即可解决系统日期修改后数值不更新的问题

PPT演示模式丢失连接修复

  • 插入Excel数值时不要用默认粘贴链接,改用「选择性粘贴」-「粘贴链接」-选择Microsoft Excel 工作表 对象,不要选择纯文本格式的链接
  • 开启PPT后台刷新:点击「文件」-「选项」-「高级」,下滑到「常规」板块,点击「Web 选项」,在「文件」选项卡中勾选保存时更新链接
  • 演示前提前打开对应Excel文件,再打开PPT进入演示模式,即可避免连接丢失

方案2:纯PPT独立实现(无需依赖Excel)

不需要关联Excel,直接在PPT内部完成日期差计算和自动更新,更适合演示场景:

  • 打开PPT的VBA编辑器(快捷键Alt+F11),点击「插入」-「模块」,粘贴以下代码:
' 请按照YYYY/MM/DD格式修改下方的固定日期参数
Const FIXED_DATE As String = "2024/01/01"

Sub UpdateDayDiff()
    Dim sld As Slide
    Dim shp As Shape
    ' 遍历所有幻灯片匹配指定名称的文本框
    For Each sld In ActivePresentation.Slides
        For Each shp In sld.Shapes
            If shp.Name = "DayDiffBox" And shp.HasTextFrame Then
                ' 计算固定日期与当日的天数差,可根据需求调整展示格式
                shp.TextFrame.TextRange.Text = CStr(DateDiff("d", CDate(FIXED_DATE), Date))
            End If
        Next
    Next
    ' 每分钟自动刷新一次,可自行调整时间间隔
    Application.OnTime Now + TimeValue("00:01:00"), "UpdateDayDiff"
End Sub

' 打开演示文稿时自动触发刷新
Sub OnPresentationOpen()
    UpdateDayDiff
End Sub
  • 操作说明:
    • 插入要展示天数的文本框,选中后按Alt+F10调出选择窗格,将该文本框重命名为DayDiffBox
    • 将代码中FIXED_DATE的数值修改为你需要的固定日期
    • 保存PPT为*启用宏的PowerPoint演示文稿(.pptm)*格式,打开时允许宏运行即可,演示模式下也会自动更新数值

内容的提问来源于stack exchange,提问作者Ismail AMANI

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 02:06:02