1

Тема: Выделить макросом несколько рисунков

В файле Word имеется несколько рисунков в формате обтекание "перед текстом". Нужно выделить совместно рисунки с определенными номерами (например, 1, 3, 4, 7) и сдвинуть их.
Данный макрос выделяет только один рисунок с номером 1:

Sub Pict1()
    Dim selPic As Object
    'В переменную selPic записываем все рисунки документа, находящиеся не в тексте.
    Set selPic = ActiveDocument.Shapes
    'Выделяется рисунок с номером 1.
    selPic(1).Select
    'Рисунки нужно сдвинуть.
    Selection.ShapeRange.IncrementLeft 0.65
    Selection.ShapeRange.IncrementLeft 0.65
End Sub

Как выделить несколько рисунков с определенными номерами?
Их, вероятно, нужно включить в переменную selPic. Как это сделать?

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

2

Re: Выделить макросом несколько рисунков

Спасибо. Нашел приемлемое решение в внешняя ссылка

Sub SelectShapeRange()
    ActiveDocument.Shapes.Range(Array(1, 3, 4, 7)).Select
    Selection.ShapeRange.IncrementLeft 0.65
    Selection.ShapeRange.IncrementLeft 0.65
End Sub
Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

3

Re: Выделить макросом несколько рисунков

Еще вопрос в связи с этим.
Пусть выделен некоторый рисунок в формате обтекание "перед текстом".
Как узнать его номер в коллекции Shapes?

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

4

Re: Выделить макросом несколько рисунков

Alex_Gur пишет:

Еще вопрос в связи с этим.
Пусть выделен некоторый рисунок в формате обтекание "перед текстом".
Как узнать его номер в коллекции Shapes?

Никогда не обращался к фигурам через VBA, но чисто логически у shapes в совокупности есть count и каждому shapes соответствует определённый ID. Если по порядку спрашивать их ID через For i = 1 To ... .Count, то i будет номером.

Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871