Статьи из блога
Как передвигать рисунок в тексте с заданной точностью
Сергей спрашивает:
Как передвигать рисунок с заданной точностью (например сдвинуть влево на 2 мм или на 2 пиксела)?
Для этих целей можно воспользоваться следующим макросом:
Sub movePic() 'Перемещение рисунка влево или вправо в милимметрах Dim Message As String On Error Resume Next If Selection.Type = wdSelectionIP Then MsgBox "Пожалуйста, выделите ваш рисунок" Else Do While Message = "" Message = InputBox("Введите расстояние (в мм), на которое следует переместить рисунок." & _ vbCr & "Если нужно переместить рисунок влево, то перед цифрой поставьте знак 'минус'", _ "Перемещение рисунка", "") If StrPtr(Message) = 0 Then Exit Sub Loop 'проверка типа объекта и, если это картинка (InlineShape), то происходит ее 'преобразование в рисунок (Shape) If Selection.Type = wdSelectionInlineShape Then Selection.InlineShapes(1).ConvertToShape End If Selection.ShapeRange.IncrementLeft MillimetersToPoints(Message) End If End Sub
Если вы не знаете, как подключить к документу и применить эти макросы, изучите следующие заметки с сайта:
Создание макроса из готового кода
Рубрика: Вопрос-Ответ, Макросы
Метки: макросы | рисунки
Просмотров: 22398
Подписаться на комментарии по RSS
Версия для печати
Метки: макросы | рисунки
Просмотров: 22398
Подписаться на комментарии по RSS
Версия для печати
Еще записи по вопросам использования Microsoft Word:
- 10 вопросов и ответов по редактору Word (1 часть)
- 3 способа очистки списка недавно открытых документов
- Word 2007: добавляем свою вкладку и свои команды
- Word 2007: полотно, рисунки, линии
- Word 2007: смена формата сохранения файла
- Word 97 - решение проблемы с отображением символов на линейке
- Абзац с цветным фоном
- Автоматизация текстового набора в Word
- Автоматическая запись макроса
- Автоматическая нумерация билетов
- Автоматическая расстановка переносов
- Автоматическое обновление полей при открытии документа
- Автоматическое сохранение документа при его закрытии
- Автотекст с последовательной нумерацией
- Белый текст на синем фоне в Word 2007
- Быстрая смена ориентации страниц документа
- Быстрое перемещение между открытыми документами Word
- Быстрое создание нового документа на основе шаблона
- Быстрый ввод текста с помощью команды =rand()
- Ввод повторяющихся фрагментов текста в Word 2007
- Ввод часто повторяющихся фрагментов текста
- Вертикальное выравнивание текста
- Возможно ли запретить копирование текста из документа Word?
- Вопрос о работе с графиками (диаграммами) в Word
- Вопросы и ответы о гиперссылках в редакторе Word
Комментариев: 8
А чтобы еще и вверх/вниз?
И не только в мм, но и в пикселах, как в условии задачи?
Конечно можно. Для работы с пикселями достаточно заменить в макросе оператор
на операторЧто касается перемещения вверх или вниз, то это тоже можно, но логичнее тогда создать свою форму с полями и переключателями. Я об этом думал, но подумал о нецелесообразности такого макроса в принципе. Кому он может быть нужен и для каких таких часто выполняемых действиях? Поэтому и не стал мудрить с такой формой.
Самый простой способ - выделенную картинку или текст-бокс передвигать по пикселам с нажатой кнопкой Alt в любом направлении при помощи стрелок на клавиатуре.
Наталья, вставьте рисунок из файла или картинку в документ, а потом попробуйте передвинуть их предложенными вами способами. Не получится, пока не будет сделано обтекание этих объектов.
Во-вторых, иногда требуется передвигать рисунок с определенной точностью, и не обязательно в пикселах, сантиметрах, дюймах или других единицах. Поэтому ручной способ слишком топорен.
Странно, у меня никогда не было проблем с передвиганием объектов таким образом, вопрос с обтеканием не вставал. Кстати, тыща извинений - должна использоваться кнопка Ctrl. На мой взгляд, для повседневной жизни и при работе на разных машинах этот способ очень подходит.
А разве нельзя открыть свойства картинки и задать и обтекание, и её расположение в нужных единицах?
Можно, но насколько я помню тот вопрос в личном письме, то человека интересовал макрос.
Огромная благодарность Наталье. Пока не прочитал её комментарии, постоянно мучился с перемещением картинок на маленькое расстояние.