Как обратиться к надписи, если она расположена на полотне?
[вложение удалено администратором]
Sub Макрос()
Dim shape As shape
' Присваиваем надписи имя "shape". Эта надпись находится в первом полотне.
Set shape = ActiveDocument.Shapes(1).CanvasItems(1)
End Sub
Я делаю так: выделяю надпись на полотне (щёлкаю по ней левой мышью) и хочу применить к этой надписи макрос. Но макрос работает не с надписью, а с полотном и происходит ошибка.
Как обратиться к выделенной надписи на полотне?
Макрос работает с выделенной надписью (то есть юзер щёлкнул по надписи левой мышью).
Надпись может находиться как на полотне, так и вне полотна.
Макрос
Sub Макрос()
Dim shape As shape
' Если рисунок находится не на полотне.
If Selection.ShapeRange(1).Type <> msoCanvas Then
' Присваиваем имя "shape" рисунку.
Set shape = Selection.ShapeRange(1)
' Если рисунок находится на полотне.
Else
' Присваиваем имя "shape" рисунку.
Set shape = Selection.ChildShapeRange(1)
End If
' Действия с рисунком. Например, узнаём расстояние от верха страницы до верха рисунка.
' Результат выводится в View - Immediate Window.
Debug.Print shape.Top
End Sub
Большое спасибо!