【工具】pptx自动插入当前日期和自动页码

使用VBA代码直接修改

使用方式,ppt界面,同时按住Alt + F11两个键 ,弹出的页面中,点击文件名称,然后右键创建模块 ,见下图

接着把下面的代码复制粘贴到模块文件中,再点击F5键即可。

vba 复制代码
Sub AddFooter()
    Dim s As Slide
    Dim sh As Shape
    Dim n As Integer
    Dim i As Integer
    
    ' 获取总页数
    n = ActivePresentation.Slides.Count
    
    ' 遍历所有幻灯片
    For i = 1 To n
        Set s = ActivePresentation.Slides(i)
        
        ' ==============================================
        ' 【关键修复】强力删除所有旧页脚,不管内容是什么
        ' ==============================================
        For j = s.Shapes.Count To 1 Step -1
            Set sh = s.Shapes(j)
            If sh.Type = msoTextBox Then
                ' 判断位置:只要是你页脚的位置,就全部删除
                If sh.Top > 500 And sh.Left > 800 Then
                    sh.Delete
                End If
            End If
        Next j
        
        ' 添加新页脚
        Set sh = s.Shapes.AddTextbox(msoTextOrientationHorizontal, Left:=755, Top:=515, Width:=300, Height:=30)
        
        ' 内容:日期 + 时间 + 页码
        With sh.TextFrame.TextRange
            .Text = Format(Date, "yyyy-mm-dd") & "   第 " & CStr(i) & "/" & CStr(n) & " 页"
            .Font.Name = "微软雅黑"
            .Font.Size = 16
            .Font.Color = vbWhite   ' 白色字体
        End With
        
        ' 垂直居中
        sh.TextFrame2.VerticalAnchor = msoAnchorMiddle
        
    Next i
    
    MsgBox "✅ 所有幻灯片页脚更新完成!"
End Sub
相关推荐
simple_whu10 天前
目录中不显示标题中间的软换行符Shift+Enter
word·office
lczdyx2 个月前
告别付费与隐私泄露!用Pandoc在本地免费、安全地将Markdown转为Word(保姆级教程)
安全·职场和发展·word·办公·自由职业者
Texous2 个月前
Java解析Excel图片
java·excel·wps·office·excel图片处理·excel图片解析·excel图片提取
初九之潜龙勿用2 个月前
C# 操作Word模拟解析HTML标记之背景色
开发语言·c#·word·.net·office
零零发聊技术2 个月前
Office各版本的简介、下载和注册
office
零零发聊技术2 个月前
Excel实现数字与列标之间的转换
excel·vba·office
初九之潜龙勿用3 个月前
C#实现导出Word图表通用方法之散点图
开发语言·c#·word·.net·office·图表
不坑老师3 个月前
小工具显出大才能——不坑盒子为教育数字化转型贡献“新方案”
microsoft·word·excel·ppt·office
私人珍藏库4 个月前
[Windows] Office Tool Plus V10.29.50.0
windows·工具·office·辅助