首页 > 解决方案 > 使用文本框内容宏重命名 Powerpoint 对象

问题描述

我找到了一个自动重命名对象的宏,但是,我需要对其进行调整,以便它显示实际文本框/形状的部分内容。有谁知道如何做到这一点?我找到的宏是这个:

Option Explicit

' ============================================================
' PowerPoint Macro : RenameOnSlideObjects
' ============================================================
' Purpose : Renames all on-slide objects within a presentation
' Inputs : Noe
' Outputs : None
' Dependencies : None
' Author : Jamie Garroch of http://youpresent.co.uk/
' Date : 01 December 2015
' ============================================================
Public Sub RenameOnSlideObjects()
  Dim oSld As Slide
  Dim oShp As Shape
  For Each oSld In ActivePresentation.Slides
    For Each oShp In oSld.Shapes
      With oShp
        Select Case True
          Case .Type = msoPlaceholder ' you could then check the placeholder type too
            .Name = "test"
          Case .Type = msoTextBox
            .Name = "myTextBox"
          Case .Type = msoAutoShape
            .Name = "myShape"
          Case .Type = msoChart
            .Name = "myChart"
          Case .Type = msoTable
            .Name = "myTable"
          Case .Type = msoPicture
            .Name = "myPicture"
          Case .Type = msoSmartArt
            .Name = "mySmartArt"
          Case .Type = msoGroup ' you could then cycle though each shape in the group
            .Name = "myGroup"
         Case Else
            .Name = "Unspecified Object"
        End Select
      End With
    Next
  Next
End Sub

因此,例如,我希望“Case .Type = msoTextBox > .Name = “myTextBox””更改为文本框内容而不是“myTextBox”。

提前致谢!

标签: vbapowerpoint

解决方案


推荐阅读