Статьи из блога
Статьи из блога
Изменение размера выделенного рисунка
Рубрика: Вопрос-Ответ, Макросы, Стили и форматирование
Метки: макросы | рисунки | форматирование
Вторник, 29 декабря 2009 г.
Просмотров: 3810
Подписаться на комментарии по RSS
Версия для печати
Метки: макросы | рисунки | форматирование
Вторник, 29 декабря 2009 г.
Просмотров: 3810
Подписаться на комментарии по RSS
Версия для печати
Дмитрий спрашивает:
Как написать макрос, который назначал бы размер выделенного рисунка -- 40% от исходного размера?
Дмитрий, на эту тему уже была опубликована заметка на сайте: Макрос массового уменьшения размеров всех рисунков. В ней описан макрос для изменения размеров ВСЕХ рисунков.
Для изменения размера одного рисунка следует немного подкорректировать макрос с тем, чтобы изменялся лишь выделенный рисунок. Вот примерное решение:
Sub PicScale()
'Изменение размера рисунка на 40% от исходного
Dim Message As String
On Error Resume Next
If Selection.Type = wdSelectionIP Then
MsgBox "Пожалуйста, выделите ваш рисунок"
Else
'проверка типа объекта и, если это картинка (InlineShape), то происходит ее
'преобразование в рисунок (Shape)
If Selection.Type = wdSelectionInlineShape Then
Selection.InlineShapes(1).ConvertToShape
End If
Selection.ShapeRange.IncrementLeft MillimetersToPoints(Message)
'Изменяем размер по высоте (по умолчанию)
Selection.ShapeRange.Height = Selection.ShapeRange.Height * 0.4
'либо изменяем по ширине - выберите свой способ, а ненужный закомментируйте
' Selection.ShapeRange.Width = Selection.ShapeRange.Width * 0.4
End If
End Sub

Поиск
Рубрики
Подписка
Читают
Обсуждают
страницы
сайты
статистика
Комментариев: 2
В макросе присутствует столбец чисел от 01 до 20. Мне он мешает вставить код макроса в Редактор VB. Или я что-то не так делаю?
Иван, это нумерация. Чтобы скопировать код следует навести мышь на код и в правом верхнем углу появятся команды. Там есть и кнопка для копирования кода в буфер.