Объект Shape в PowerPoint не позволяет вам взаимодействовать с его событиями, как это обычно происходит с другими объектами в коде VBA.Только два «события», которые выставлены, на самом деле не являются событиями VBA.Это специальный класс, называемый Actions, и это ppMouseOver и ppMouseClick.Если вам заранее известна вся информация о ваших фигурах и соответствующая информация, вы можете написать код, который будет выполнять то, что вы хотите, но все это будет жестко закодировано, что, вероятно, не то, что вы хотите.при запуске презентации можно запустить что-то вроде этого:
Sub SetActionsRoutine()
Shape1.ActionSettings(ppMouseOver).Action = ppActionRunMacro
Shape1.ActionSettings(ppMouseOver).Run = "showInformation1"
Shape2.ActionSettings(ppMouseOver).Action = ppActionRunMacro
Shape2.ActionSettings(ppMouseOver).Run = "showInformation2"
...
...
End Sub
И затем, когда вы выполняете MouseOver с этими фигурами, запускается одна из следующих подпрограмм.очень ограничен и требует написания подпрограммы для каждой фигуры на слайде.Возможно, не тот подход, который вам нужен, но опять же, с PowerPoint, ваши возможности очень ограничены.