Странный баг на powerpoint vba
У меня есть текстовое поле "mynote" на слайде. Если я выполню:
Sub test()
If ActiveWindow.Selection.SlideRange.Shapes("mynote").Visible Then
MsgBox "ok"
End If
end sub
Оно работает.
Но если я прикреплю форму с этим макросом:
Sub test(oShape As Shape)
If ActiveWindow.Selection.SlideRange.Shapes("mynote").Visible Then
MsgBox "ok"
End If
end sub
Это не работает (нет сообщения об ошибке, нет сообщения "ОК")
1 ответ
Это будет зависеть от того, как вы называете это из другой подпрограммы - вы должны отправить в форме. Подобно:
Sub testYourTest()
Dim sh As Shape
Set sh = ActivePresentation.Slides(4).Shapes(1)
test sh
End Sub
Ты не можешь бежать test
автономный, потому что он ожидает, что вы отправите в Shape
объект. Но видя как твой oShape
объект не используется в вашем test
рутина, вы можете также удалить его.