У меня есть "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
Это не работает (никакое сообщение об ошибке, нет "хорошо" обменивается сообщениями),
Это будет зависеть от того, как вы вызываете это из другой подпрограммы - вы должны отправить форму. Например:
Sub testYourTest()
Dim sh As Shape
Set sh = ActivePresentation.Slides(4).Shapes(1)
test sh
End Sub
Вы не можете запустить test
автономно, потому что он ожидает, что вы отправите объект Shape
. Но поскольку ваш объект oShape
не используется в вашей подпрограмме test
, вы можете удалить его.