在Ms office PPT2013中,用VBA实现点击图形按钮显示对应内容,且可以点击其他图形按钮切换内容?

【如图】例如:有5个图形按钮(不是控件里的按钮),点击【图形按钮1】时显示其对应内容(图形组合);点击【图形按钮2】时,在显示对应内容(图形组合)的同时【图形按钮1】的内容(图形组合)消失。5个按钮都是这个效果,用PPT中的VBA编程怎么写?视频中是我用PPT动画做的效果,不会编程,这个怎么写啊?

在Microsoft Office PowerPoint 2013中,您可以使用VBA(Visual Basic for Applications)编写代码来实现点击图形按钮显示对应内容并切换内容的功能。以下是一个示例代码,演示了如何实现这一功能:
首先,打开 PowerPoint 2013,并按下 ALT + F11 组合键打开 VBA 编辑器。在左侧的项目资源管理器窗口中,双击 "ThisPresentation" 以打开该演示文稿的代码窗口。
在代码窗口中,输入以下代码:
Option Explicit

Private Sub Shape_Click()
Dim clickedShape As Shape
Set clickedShape = ActiveWindow.Selection.ShapeRange(1)

' 根据点击的图形按钮的名称或其他属性,执行相应的操作
Select Case clickedShape.Name
Case "Button1" ' 第一个按钮
' 在此处添加显示对应内容的代码
MsgBox "点击了按钮1"

Case "Button2" ' 第二个按钮
' 在此处添加显示对应内容的代码
MsgBox "点击了按钮2"

' 添加更多按钮的处理逻辑

End Select
End Sub

在代码中,我们使用了 Shape_Click 事件处理程序来捕捉点击图形按钮的事件。在事件处理程序中,我们首先获取被点击的图形按钮,然后使用 Select Case 语句来根据按钮的名称或其他属性执行相应的操作。您可以根据实际情况修改 Select Case 语句的条件和操作,以实现您需要的功能。
请注意,您需要将代码中的 "Button1" 和 "Button2" 替换为您实际使用的图形按钮的名称或其他属性。
完成代码编写后,保存并关闭 VBA 编辑器。然后,在 PowerPoint 中插入您的图形按钮,并为每个按钮设置相应的名称或其他属性,以便在代码中进行识别。
当您在演示文稿中点击图形按钮时,对应的代码将执行,并根据按钮的名称或其他属性显示相应的内容。
希望这个示例能够帮助您实现您的需求。如果您有其他问题,请随时提问。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-07-12
Sub ShowContent()
Dim i As Integer
Dim btn As Shape

' 循环遍历所有形状,找到其中的按钮
For Each btn In ActivePresentation.Slides(1).Shapes
If TypeName(btn) = "Button" Then
' 如果当前按钮是被选中的按钮,则显示其对应的内容
If btn.Selected Then
Set content = ActivePresentation.Slides(1).Shapes("Content")
content.Visible = True
End If
ElseIf TypeName(btn) = "GroupBox" Then
' 如果当前按钮是包含内容的组框,则显示其对应的内容
If btn.GroupItems.Count > 0 Then
Set content = btn.GroupItems(1).Placement.TopLeftCell.Offset(0, btn.Height + btn.Width / 2 - content.Height / 2).Shapes("Content")
content.Visible = True
End If
End If
Next btn
End Sub追问

大神你好!你写VBA代码我刚才试过了,没反应,不知道是哪里的问题。
我可以把PPT文件发过去,你给看看吗?

相似回答