office ppt版式批量重命名

PPT批量重命名版式,先Alt+F11,然后插入模块,F5运行就全部改了。

Sub BatchRenameMastersAndLayouts()
    ' 批量重命名主版式和子版式
    ' 命名规则:
    '   第一个主版式:聚码屋 www.ym3.net
    '   第一个主版式的子版式:聚码屋 www.ym3.net-1、-2...
    '   第N个主版式(N>=2):聚码屋 www.ym3.net-N
    '   第N个主版式的子版式:聚码屋 www.ym3.net-N-1、-N-2...
    
    Dim d As Design
    Dim master As Master
    Dim layout As CustomLayout
    Dim mainIndex As Integer
    Dim subIndex As Integer
    Dim mainName As String
    Dim newName As String
    
    mainIndex = 0
    
    ' 遍历所有设计模板(每个Design对应一个主版式)
    For Each d In ActivePresentation.Designs
        mainIndex = mainIndex + 1
        Set master = d.SlideMaster
        
        ' 构建主版式名称
        If mainIndex = 1 Then
            mainName = "聚码屋 www.ym3.net"
        Else
            mainName = "聚码屋 www.ym3.net-" & mainIndex
        End If
        
        ' 重命名主版式(通过Design的Name属性)
        d.Name = mainName
        
        subIndex = 0
        
        ' 遍历该主版式下的所有子版式
        For Each layout In master.CustomLayouts
            subIndex = subIndex + 1
            
            ' 构建子版式名称
            If mainIndex = 1 Then
                ' 第一个主版式的子版式:聚码屋 www.ym3.net-1、-2...
                newName = "聚码屋 www.ym3.net-" & subIndex
            Else
                ' 其他主版式的子版式:聚码屋 www.ym3.net-N-1、-N-2...
                newName = "聚码屋 www.ym3.net-" & mainIndex & "-" & subIndex
            End If
            
            ' 应用新名称
            layout.Name = newName
        Next layout
        
        Debug.Print "主版式 " & mainIndex & " (" & mainName & ") 下的 " & subIndex & " 个子版式已重命名"
    Next d
    
    MsgBox "批量重命名完成!" & vbCrLf & _
           "共处理了 " & mainIndex & " 个主版式", vbInformation, "完成"
End Sub


本文由网友投稿或聚码屋整理自网络,如转载请注明出处:https://www.ym3.net/2598.html

本站发布的内容若侵犯到您的权益,请邮件联系 cnzz8#outlook.com  删除,我们将及时处理!

本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行测试。

本站资源仅供学习和交流使用,版权归资源原作者所有,请在下载后24小时之内自觉删除。

若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关。

 游客 发表评论

请先登录OR注册后评论

请先登录

还没有评论,快来说点什么吧~

返回顶部