Powerpoint:手动设置幻灯片名称

时间:2013-05-31 10:34:34

标签: ms-office powerpoint

上下文 C#中的PowerPoint幻灯片具有属性Slide.Name(通常包含任意字符串值)。 在我的C#应用​​程序中,我想使用此属性来识别幻灯片(幻灯片顺序是不可靠的)。

问题: 如何在PowerPoint应用程序中手动设置Slide.Name属性?

我的问题非常像:“How to name an object within a PowerPoint slide?”,但只是在幻灯片级别。

任何帮助都将不胜感激。

6 个答案:

答案 0 :(得分:10)

PowerPoint中没有内置功能允许您编辑幻灯片的名称。正如Steve所说,你必须使用VBA代码。幻灯片名称将永远不会因插入更多幻灯片而改变,即使您关闭PowerPoint也会保持不变;在VBA代码中设置的幻灯片名称是持久的。以下是我编写的一些代码,可让您轻松查看当前所选幻灯片的名称并允许您重命名:

'------------------------------------------------------------------
' NameSlide()
'
' Renames the current slide so you can refer to this slide in
' VBA by name. This is not used as part of the application;
' it is for maintenance and for use only by developers of
' the PowerPoint presentation.
'
' 1. In Normal view, click on the slide you wish to rename
' 2. ALT+F11 to VB Editor
' 3. F5 to run this subroutine
'------------------------------------------------------------------
Sub NameSlide()
    Dim curName As String
    curName = Application.ActiveWindow.View.Slide.name

    Dim newName As String
retry:
    newName = InputBox("Enter the new name for slide '" + curName + "', or press Cancel to keep existing name.", "Rename slide")
    If Trim(newName) = "" Then Exit Sub

    Dim s As Slide

    ' check if this slide name already exists
    On Error GoTo SlideNotFound
    Set s = ActivePresentation.Slides(newName)
    On Error GoTo 0

    MsgBox "Slide with this name already exists!"
    GoTo retry

    Exit Sub

SlideNotFound:
    On Error GoTo 0
    Application.ActiveWindow.View.Slide.name = newName
    MsgBox "Slide renamed to '" + newName + "'."

End Sub

答案 1 :(得分:4)

您无法手动设置幻灯片名称,但使用一些代码,很简单。在VBA中,例如:

Sub NameThatSlide()
  ActivePresentation.Slides(1).Name = "Whatever You Like Here"
End Sub

答案 2 :(得分:2)

您可以手动或使用VBA重命名幻灯片。一旦你知道如何,门就会打开一些有趣的可能性,我将用下面的代码演示。

手动重命名幻灯片。此功能隐藏在VBA编辑器的“属性”窗格中,但需要编码。

  1. 如果看不到开发人员功能区,请启用它:文件> 选项> 自定义功能区>检查开发人员主标签。

  2. 开发人员功能区中,单击 Visual Basic 菜单项以打开Visual Basic编辑器。

  3. Ctrl + R 键导航至Project Explorer窗格。

  4. 展开" Microsoft PowerPoint对象"

  5. 点击任意幻灯片进行选择。

  6. F4 键导航至“属性”窗格。

  7. 修改(姓名)项,然后按输入以应用名称更改。

  8. 幻灯片名称更改可能不会立即显示在VBA Project Explorer窗格中。只要“属性”窗格中的名称正确,名称就会成功更改。

    这个VBA代码也可以解决问题(隐藏幻灯片编号1):

    ActivePresentation.Slides(1).SlideShowTransition.Hidden = msoTrue
    

    此代码块介绍了管理幻灯片名称和回答主要问题的几种方法。

    Option Explicit
    
    Public Function RenameSlide(oldName As String, newName As String)
    ' RenameSlide finds slide oldName and renames it to newName.
    ' Arguements:
    '   oldName: current (old) name of existing slide
    '   newName: new name for slide.
    '
        Dim tempBool As Boolean
        Dim sld As Slide
        Dim RetVal(0 To 1) As String
    
        ' Check if oldName can be found.
        If SlideExists(oldName) Then
            Set sld = Application.ActivePresentation.Slides(oldName)
        Else
            RetVal(0) = 1 'Error 1
            RetVal(1) = "Error 1: slide with name " & oldName & " not found. Aborting."
            Exit Function
        End If
    
        ' Check if this slide name newName already exists.
        If SlideExists(newName) Then
            RetVal(0) = 2 'Error 1
            RetVal(1) = "Error 2: slide with name " & newName & " already exists. Aborting."
            Exit Function
        End If
    
        ' Rename the slide
        'Application.ActivePresentation.Slides(oldName) = newName
        Application.ActivePresentation.Slides(oldName).Select
        Application.ActiveWindow.View.Slide.Name = newName 'current slide
        RetVal(0) = 0 'Success
        RetVal(1) = "Success: slide renamed from '" & oldName & "' to '" & newName & "'."
    
    End Function
    
    Public Sub SetSlideName()
    ' Prompt user for new name for active slide.
    '
        Dim oldName As String
        Dim newName As String
        Dim sld As Slide
        Dim msg As String
    
        ' Get current name of active slide.
        oldName = Application.ActiveWindow.View.Slide.Name
    
        msg = "Enter the new name for slide '" + oldName + "'."
    retry:
        newName = ""
        ' Prompt for new slide name. Loop until a name of at least 1 character is provided.
        Do While newName = ""
            newName = InputBox(msg, "Rename slide")
            newName = Trim(newName)
            If Len(newName) = 0 Then
                msg = "Try again.  You must enter a slide name to continue."
            ElseIf newName = oldName Or newName = Str(vbCancel) Then
                Exit Sub
            End If
        Loop
    
        ' If an existing slide already has name newName, then
        ' go back and prompt user again.slide name already exists
        If SlideExists(newName) Then
            msg = "Slide with this name already exists!"
            GoTo retry
        End If
    
        ' Set the new slide name
        Application.ActiveWindow.View.Slide.Name = newName
        MsgBox "Slide renamed to '" + newName + "'."
    End Sub
    
    Public Function SlideExists(SlideName As String) As Boolean
        Dim RetVal As Boolean
        Dim sld
    
        ' Assume slide does not exist.
        SlideExists = False
    
        ' Try to find slide by name.
        ' If we error out, the slide does NOT exist.
        On Error GoTo NoSlide
        Set sld = ActivePresentation.Slides(SlideName)
    
        ' If we got this far, the slide DOES exist.
        SlideExists = True
        Exit Function
    
    NoSlide:
        ' Error setting slide objects shows
        ' that slides does NOT exist.
        SlideExists = False
    End Function
    

    另外,我使用幻灯片命名技巧和一点VBA来选择性地从打印中删除某些幻灯片。为了填充宏列表,我添加了一些额外的VBA宏。从任何幻灯片:开发人员功能区>宏>选择宏>运行按钮。使用此方法启动我的PresentSlide,DontPresentSlide,PrintSlide和DontPrintSlide宏。正确标记各种幻灯片后,只需分别在出现或打印之前运行PrepToPresentSlides或PrepToPrintSlides宏。

    稍微使用这些宏并阅读评论。您会发现我可以扩展地编写代码,因此您可以根据需要轻松修改它。

    下面的代码可以帮助我管理哪些幻灯片和对象的打印以及哪些在屏幕上显示。当我想要打印参考幻灯片但不覆盖它们时,这特别有用。当我有动画幻灯片时,它甚至更有用。动画通常不能很好地翻译印刷品。所以,我选择不打印一些动画对象。事实上,我甚至可以为仅用于打印的对象添加替代内容(在呈现时隐藏) - 尽管我很少这样做。相反,我通常会隐藏动画以防止打印或创建幻灯片以呈现它以及用于打印的非动画副本。使用这些宏,可以轻松管理幻灯片和对象的混合和匹配,以便打印,幻灯片和对象进行演示。我希望你喜欢。

    Option Explicit
    
    ' DontPresentSlide - run macro while on a slide you wish to skip while presenting.
    '                    The slide name will be appended with "NoPresent". You still
    '                    need to run PrepToPresent before presenting to hide slide.
    ' PresentSlide - "NoPresent" will be removed from the slide. You still
    '                need to run PrepToPresent before presenting to hide slide.
    ' PrepToPesentSlides() - Unhide slides and objects you want presented and
    '                hide slides and objects you do NOT want presented.
    ' ShowNoPressnt() - show slides and shapes marked "NoPresent"
    ' HideNoPresent() - hide slides and shapes marked "NoPresent"
    
    ' DontPrintSlide - run macro while on a slide you wish to skip while presenting.
    '                    The slide name will be appended with "NoPrint". You still
    '                    need to run PrepToPresent before presenting to hide slide.
    ' PrintSlide - "NoPrint" will be removed from the slide. You still
    '                need to run PrepToPresent before presenting to hide slide.
    ' PrepToPrintSlides() - Unhide slides and objects you want printed and
    '                hide slides and objects you do NOT want printed.
    ' ShowNoPrint() - show slides and shapes marked "NoPrint"
    ' HideNoPrint() - hide slides and shapes marked "NoPrint"
    
    ' ShowHideSlides() - Hide or Unhide slides based on slide name.
    ' ShowHideShapes() - Hide or Unhide shapes based on shapes name.
    
    
    Public Const cjaHide = False
    Public Const cjaShow = True
    Public Const cjaToggle = 2
    
    Sub ShowHideSlides(NameContains As String _
                    , Optional LMR As String = "R" _
                    , Optional ShowSlide As Integer = False)
    ' Show or Hide slides based on slide name.
    ' Arguements:
    '   NameContains (string):
    '       slides with this string will be modified.
    '   LMR (string): enter L, M or R to indicate
    '       searching the Left, Middle or Right of
    '       the slide name, respectively.
    '   ShowSlide (integer):
    '       Show: True (-1)
    '       Hide: False (0)
    '       Toggle: 2
    '
    ' To show or hide slides manually:
    '   Right-click the slide thumbnail, then click Hide Slide
    ' To rename slides,
    '   Use this VBA: ActiveWindow.View.Slide.Name = "NewSlideName"
    '   Or, edit the (Name) property in the VBA Properties window.
    '
       Dim sldCurrent As Slide
       Dim found As Boolean
       found = False
    
       LMR = Trim(UCase(LMR))
       If LMR <> "L" And LMR <> "M" Then LMR = "R"
       'Loop through each slide in presentation.
       For Each sldCurrent In ActivePresentation.Slides
            'Match shape name left, right or middle as per LMR arguement.
            'ActiveWindow.View.Slide.Name or Slide.SlideNumber
            found = False
            If LMR = "R" And LCase(right(sldCurrent.Name, Len(NameContains))) = LCase(NameContains) Then
                found = True
            ElseIf LMR = "L" And LCase(left(sldCurrent.Name, Len(NameContains))) = LCase(NameContains) Then
                found = True
            ElseIf LMR = "M" And InStr(1, LCase(NameContains), LCase(sldCurrent.Name)) Then
                found = True
            End If
            'If match found, then set shape visibility per ShowShape arguement.
            If found Then
                If ShowSlide = True Then
                    ActivePresentation.Slides(sldCurrent.SlideNumber).SlideShowTransition.Hidden = msoFalse
                ElseIf ShowSlide = False Then
                    ActivePresentation.Slides(sldCurrent.SlideNumber).SlideShowTransition.Hidden = msoTrue
                Else
                    ActivePresentation.Slides(sldCurrent.SlideNumber).SlideShowTransition.Hidden = Not ActivePresentation.Slides(sldCurrent.SlideNumber).SlideShowTransition.Hidden
                End If
            End If
        Next       'sldCurrent
    End Sub
    
    Sub ShowHideShapes(NameContains As String _
                    , Optional LMR As String = "R" _
                    , Optional ShowShape As Integer = False)
    ' Show or Hide shapes/objects based on object name.
    ' Arguements:
    '   NameContains (string):
    '       shapes with this string will be modified.
    '   LMR (string): enter L, M or R to indicate
    '       searching the Left, Middle or Right of
    '       the slide name, respectively.
    '   ShowSlide (integer):
    '       Show: True (-1)
    '       Hide: False (0)
    '       Toggle: 2
    '
    ' To show, hide and/or rename objects:
    '    1. Turn on Selection Pane via: Home Ribbon >
    '       Select > Selection Pane.
    '    2. Double-click a shape name to rename it.
    '    3. Click the eye icon to the far right to show/hide a shape.
    
       Dim shpCurrent As Shape
       Dim sldCurrent As Slide
       Dim found As Boolean
       found = False
    
       LMR = Trim(UCase(LMR))
       If LMR <> "L" And LMR <> "M" Then LMR = "R"
       'Loop through each slide in presentation.
       For Each sldCurrent In ActivePresentation.Slides
          With sldCurrent
              'Loop through each shape on current slide.
              For Each shpCurrent In .Shapes
                'Match shape name left, right or middle as per LMR arguement.
                found = False
                If LMR = "R" And right(shpCurrent.Name, Len(NameContains)) = NameContains Then
                    found = True
                ElseIf LMR = "L" And left(shpCurrent.Name, Len(NameContains)) = NameContains Then
                    found = True
                ElseIf LMR = "M" And InStr(1, NameContains, shpCurrent.Name) Then
                    found = True
                End If
                'If match found, then set shape visibility per ShowShape arguement.
                If found Then
                    If ShowShape = True Then
                        shpCurrent.Visible = True
                    ElseIf ShowShape = False Then
                        shpCurrent.Visible = False
                    Else
                        shpCurrent.Visible = Not shpCurrent.Visible
                    End If
                End If
              Next 'sldCurrent
          End With 'sldCurrent
        Next       'sldCurrent
    
    End Sub
    
    Sub HideNoPrint()
    ' Hide slides and shapes you do NOT want printed.
    '
    ' Run this macro to hide all slides and shapes that
    ' end with the string "NoPrint".
    
    ' Usage.  Assume you have slides that contain animations that
    ' make the printed slide difficult or impossible to read.
    ' Let's further suppose you plan to present certain slides
    ' but not print them.
    '   1. Add the"NoPrint" suffix to any shapes that clutter
    '      the printed page.
    '   2. Add the "NoPrint" suffix to slides you don't want to
    '      print.
    '   3. Run this macro to hide shapes and slides.
    '   4. Print the slides.
    '   5. Optionally, run the ShowNoPrint() macro in preparation
    '      for presenting the slides.
        ShowHideShapes "NoPrint", "R", False
        ShowHideSlides "NoPrint", "R", False
    End Sub
    
    Sub ShowNoPrint()
    ' Unhide slides and shapes that were hidden
    ' to prevent them from being printed in handouts.
    '
        ShowHideShapes "NoPrint", "P", True
        ShowHideSlides "NoPrint", "P", True
    End Sub
    
    Sub HideNoPressent()
    ' Hide objects you do NOT want to present on screen.
    '
    ' Run this macro to hide all slides and shapes that
    ' end with the string "NoPresent".
    '
    ' Usage.  Assume you have slides that contain supporting material
    ' that you wish to provide as printed handouts but not show.
    ' You can manually hide those slides and objects of course. I
    ' prefer to use these macros.
    '   1. Add the"NoPresent" suffix to any shapes that you want
    '      to print to handouts but not show on-screen.
    '   2. Add the "NoPresent" suffix to slides you want to
    '      print but not display on screen, such as reference slides.
    '   3. Run this macro to hide the "NoPresent" shapes and slides.
    '   4. Present your slides.
    '   5. Optionally, run the ShowNoPresent() macro in preparation
    '      for printing the slides.
    '
        ShowHideShapes "NoPressent", "R", False
        ShowHideSlides "NoPressent", "R", False
    End Sub
    
    Sub ShowNoPresent()
    ' Unhide objects that were hidden to prevent them from
    ' being presented on screen.
    '
        ShowHideShapes "NoPressent", "P", True
        ShowHideSlides "NoPressent", "P", True
    End Sub
    
    Sub PrepToPrintSlides()
    ' Unhide objects you want printed and
    ' hide objects you do NOT want printed.
        ShowNoPresent
        HideNoPrint
    End Sub
    
    Sub PrepToPresentSlides()
    ' Unhide objects you want presented and
    ' hide objects you do NOT want presented.
        ShowNoPrint
        HideNoPresent
    End Sub
    
    Sub DontPresentSlide()
        Dim RetVal, sldName As String
        sldName = Application.ActiveWindow.View.Slide.Name
        If InStr(1, sldName, "NoPresent", vbBinaryCompare) = 0 Then
            RetVal = RenameSlide(sldName, sldName & "-NoPresent")
        End If
        HideNoPresent
    End Sub
    
    Sub PresentSlide()
        Dim RetVal, sldName As String, strStart As String, newName As String
        'Remove the NoPresent suffix from the current slide.
    
        'get slide name
        sldName = Application.ActiveWindow.View.Slide.Name
        'Unhide slide
        ActivePresentation.Slides(sldName).SlideShowTransition.Hidden = msoFalse
        'remove "-NoPresent" from slide name
        Do
            strStart = InStr(1, sldName, "-NoPresent")
            If InStr(1, sldName, "-NoPresent") Then
                newName = left(sldName, strStart - 1) & right(sldName, Len(sldName) - strStart - 9)
                RetVal = RenameSlide(sldName, newName)
            End If
            sldName = Application.ActiveWindow.View.Slide.Name
        Loop Until InStr(1, sldName, "-NoPresent") = 0
        'remove "NoPresent" from slide name
        Do
            strStart = InStr(1, sldName, "NoPresent")
            If InStr(1, sldName, "NoPresent") Then
                newName = left(sldName, strStart - 1) & right(sldName, Len(sldName) - strStart - 8)
                RetVal = RenameSlide(sldName, newName)
            End If
            sldName = Application.ActiveWindow.View.Slide.Name
        Loop Until InStr(1, sldName, "NoPresent") = 0
    
    End Sub
    
    Sub DontPrintSlide()
        Dim RetVal, sldName As String
        sldName = Application.ActiveWindow.View.Slide.Name
        If InStr(1, sldName, "NoPrint", vbBinaryCompare) = 0 Then
            RetVal = RenameSlide(sldName, sldName & "-NoPrint")
        End If
        HideNoPrint
    End Sub
    
    Sub PrintSlide()
        Dim RetVal, sldName As String, strStart As String, newName As String
        'Remove the NoPrint suffix from the current slide.
    
        'get slide name
        sldName = Application.ActiveWindow.View.Slide.Name
        'Unhide slide
        ActivePresentation.Slides(sldName).SlideShowTransition.Hidden = msoFalse
        'remove "-NoPrint" from slide name
        Do
            strStart = InStr(1, sldName, "-NoPrint")
            If InStr(1, sldName, "-NoPrint") Then
                newName = left(sldName, strStart - 1) & right(sldName, Len(sldName) - strStart - 7)
                RetVal = RenameSlide(sldName, newName)
            End If
            sldName = Application.ActiveWindow.View.Slide.Name
        Loop Until InStr(1, sldName, "-NoPrint") = 0
        'remove "NoPrint" from slide name
        Do
            strStart = InStr(1, sldName, "NoPrint")
            If InStr(1, sldName, "NoPrint") Then
                newName = left(sldName, strStart - 1) & right(sldName, Len(sldName) - strStart - 6)
                RetVal = RenameSlide(sldName, newName)
            End If
            sldName = Application.ActiveWindow.View.Slide.Name
        Loop Until InStr(1, sldName, "NoPrint") = 0
    End Sub
    
    Sub HideAllCovers()
    ' Run this macro to hide all Covers.
        ShowHideShapes "Cover", "L", False
    End Sub
    
    Sub ShowAllCovers()
    ' Run this macro to hide all Covers.
        ShowHideShapes "Cover", "L", True
    End Sub
    
    Sub HideAllAnswers()
    ' Run this macro to hide all Covers.
        ShowHideShapes "Answer", "L", False
    End Sub
    
    Sub ShowAllAnswers()
    ' Run this macro to hide all Covers.
        ShowHideShapes "Answer", "L", True
    End Sub
    
    Sub HideAllQuestions()
    ' Run this macro to hide all Covers.
        ShowHideShapes "Question", "L", False
    End Sub
    
    Sub ShowAllQuestions()
    ' Run this macro to hide all Covers.
        ShowHideShapes "Question", "L", True
    End Sub
    
    Sub ShowAll()
    ' Run this macro to hide all shapes (Covers and Answers).
        ShowAllQuestions
        ShowAllAnswers
        ShowAllCovers
        ShowNoPrint
    End Sub
    
    Sub HideAll()
    ' Run this macro to hide all shapes (Covers and Answers).
        HideAllQuestions
        HideAllAnswers
        HideAllCovers
        HideNoPrint
    End Sub
    

答案 3 :(得分:1)

我不确定这是否会让您设置Slide.Name属性,因为我不是VBA程序员,但无论如何AFAIK是在PowerPoint 2010中命名幻灯片的最简单方法是使用大纲视图。

如果将鼠标放在创建的幻灯片上最左侧,则可以向右拖动一种垂直滑动分类器。在该窗格的顶部,您会看到两个标签:幻灯片大纲

选择大纲,您会看到每张幻灯片都已编号,还有一个灰色抓取按钮,可让您重新排序幻灯片。如果单击右侧的,则可以输入您喜欢的任何名称,例如主页

在主视图窗格中,幻灯片将在其上标记主页。然后,您可以将其保留在那里,或者通过将字体颜色更改为背景或通过在演示文稿框架外移动文本来隐藏它。

BTW您可以在超链接中使用这些名称。

答案 4 :(得分:1)

使用Sub SplitFile()函数从一组> 100张幻灯片创建单个幻灯片。一切顺利!!但是,任何人都可以告诉我,我会使用哪些代码自动重命名文件,假设每个幻灯片在文本框中都有标题?我希望幻灯片标题是创建的新单个幻灯片的文件名。

这是我用来创建单个幻灯片(作为单个文件)的代码,感谢在线发布的任何人。

Sub SplitFile()     Dim lSlidesPerFile As Long     Dim lTotalSlides As Long     Dim oSourcePres作为演示文稿     昏暗的otargetPres作为演示文稿     Dim sFolder As String     Dim sExt As String     Dim sBaseName As String     Dim lCounter As Long     Dim lPresentationsCount As Long&#39;我们将把它分成多少     Dim x As Long     Dim lWindowStart As Long     Dim lWindowEnd Long     Dim sSplitPresName As String

On Error GoTo ErrorHandler

Set oSourcePres = ActivePresentation
If Not oSourcePres.Saved Then
    MsgBox "Please save your presentation then try again"
    Exit Sub
End If

lSlidesPerFile = CLng(InputBox("How many slides per file?", "Split Presentation"))
lTotalSlides = oSourcePres.Slides.Count
sFolder = ActivePresentation.Path & "\"
sExt = Mid$(ActivePresentation.Name, InStr(ActivePresentation.Name, ".") + 1)
sBaseName = Mid$(ActivePresentation.Name, 1, InStr(ActivePresentation.Name, ".") - 1)

If (lTotalSlides / lSlidesPerFile) - (lTotalSlides \ lSlidesPerFile) > 0 Then
    lPresentationsCount = lTotalSlides \ lSlidesPerFile + 1
Else
    lPresentationsCount = lTotalSlides \ lSlidesPerFile
End If

If Not lTotalSlides > lSlidesPerFile Then
    MsgBox "There are fewer than " & CStr(lSlidesPerFile) & " slides in this presentation."
    Exit Sub
End If

For lCounter = 1 To lPresentationsCount

    ' which slides will we leave in the presentation?
    lWindowEnd = lSlidesPerFile * lCounter
    If lWindowEnd > oSourcePres.Slides.Count Then
        ' odd number of leftover slides in last presentation
        lWindowEnd = oSourcePres.Slides.Count
        lWindowStart = ((oSourcePres.Slides.Count \ lSlidesPerFile) * lSlidesPerFile) + 1
    Else
        lWindowStart = lWindowEnd - lSlidesPerFile + 1
    End If

    ' Make a copy of the presentation and open it

    For Each oSlide In ActiveWindow.Presentation.Slides
strTitles = strTitles _
    & "Slide: " _
    & CStr(oSlide.SlideIndex) & vbCrLf _
    & oSlide.Shapes.Title.TextFrame.TextRange.Text _
    & vbCrLf & vbCrLf

下一个oSlide 错误GoTo ErrorHandler

intFileNum = FreeFile

sSplitPresName = sFolder&amp; sBaseName&amp; _                &#34; _&#34; &安培; CStr(lWindowStart)&amp; &#34; - &#34; &安培; CStr(lWindowEnd)&amp; &#34;&#34; &安培; SEXT         oSourcePres.SaveCopyAs sSplitPresName,ppSaveAsDefault         设置otargetPres = Presentations.Open(sSplitPresName ,,, True)

    With otargetPres
        For x = .Slides.Count To lWindowEnd + 1 Step -1
            .Slides(x).Delete
        Next
        For x = lWindowStart - 1 To 1 Step -1
            .Slides(x).Delete
        Next
        .Save
        .Close
    End With

Next    ' lpresentationscount

NormalExit:     退出子 的ErrorHandler:     MsgBox&#34;遇到错误&#34;     恢复NormalExit 结束子

答案 5 :(得分:0)

在“文件->选项->自定义功能区”中启用“开发人员”标签(详细信息:https://www.addintools.com/documents/powerpoint/where-is-developer-tab.html

在“开发人员”标签中,请按照以下步骤操作,并查看下图(葡萄牙语,抱歉)

  • 进入开发人员标签
  • 选择目标幻灯片
  • 如果幻灯片中没有任何活动的X控件(按钮,文本框等),请在“开发人员”标签中添加一个虚拟按钮
  • 在幻灯片上选择此按钮,然后在开发人员标签上单击“属性”
  • 在属性窗口的顶部,有一个组合框,您可以在其中选择幻灯片而不是按钮
  • 选择幻灯片并查看其编程属性,包括名称

enter image description here