【发布时间】:2014-04-16 16:35:10
【问题描述】:
我希望能够在单击某个形状时更改它的某些值。但我想在 powerpoint 处于编辑模式时制作它(我不知道是否这样说),而不是幻灯片放映模式。我一直在网上寻找,我只找到了一种在幻灯片放映模式下制作的方法,所以当演示文稿运行时。
这是我找到的代码
Private Sub createSwipeNext(color)
Dim swipArrow As Shape
Dim subName As String
subName = "Identify"
Set cSlide = Application.ActiveWindow.View.Slide
'ActiveWindow.Selection.Unselect
Set swipArrow = cSlide.Shapes.AddShape(msoShapeRightArrow, ActivePresentation.SlideMaster.width + 10, ActivePresentation.SlideMaster.height / 2, 40, 30)
If color = "green" Then
swipArrow.Fill.ForeColor.RGB = vbGreen
Else
swipArrow.Fill.ForeColor.RGB = vbRed
End If
swipArrow.name = "Dink swipe arrow"
'swipArrow.ActionSettings(ppMouseClick).Run = subName
With swipArrow.ActionSettings(ppMouseClick) ' or ppMouseOver if you prefer
.Run = subName
.Action = ppActionRunMacro
End With
End Sub
使用此代码可以在幻灯片放映模式下单击形状并运行 identify() 方法。我想做同样的事情,但在编辑模式下,所以当演示文稿没有运行时。这可能吗?
【问题讨论】:
标签: vba powerpoint mouseclick-event