Word макрос размер рисунка

Иногда пользователю нужно разом вставить в документ Microsoft Word кучу картинок. Ну и, чисто эстетически, хочется, чтобы все они были одного размера. Только вот по одному исправлять – времени много уходит. А ведь в приложении есть специальный инструмент, с помощью которого можно подогнать разом размер кучи изображений. Об этой функции я сегодня и расскажу.

Подгонять размер картинок в Microsoft Word можно несколькими способами. Как я уже говорила, есть быстрый способ изменения размеров всех изображений разом или каждого по отдельности. Я разберу несколько способов, постараюсь описать их реализацию максимально подробно.

Изменение размера одной картинки вручную

Самый простой способ изменить размер картинки в MS Word (который я постоянно практикую) – навести курсор на угол или любой край картинки и вытянуть его. А если нужно, чтобы по ширине они были схожи, можно ориентироваться по линейке.

Как настроить размер изображения вручную в Microsoft Word

Мне лично удобнее подгонять размер картинок каждый раз вручную, ориентируясь по линейке

Указать точную высоту и ширину вручную

Для этого мне нужно сначала нажать на изображение, после чего в главном меню появится дополнительная категория «Работа с рисунками». Жму по вкладке «Формат», после чего в правой ее части, в разделе «Размер», можно указать конкретные величины по высоте и ширине. Этот способ распространяется не только на картинки, но и различные объекты, фигуры, надписи и так далее.

Как поменять высоту и ширину картинки в MS Word через меню

Еще один вариант – указывать точный размер в этой строке

Практически точно так же можно указать размер в окне с более подробными параметрами. Для этого нужно в том же разделе кликнуть на маленькую ссылку в правом нижнем углу этого меню.

Как отрегулировать размер изображения в Microsoft Word через параметры

Еще я могу вызвать окно дополнительных параметров настройки размера картинки

В результате откроется окно «Макет». Во вкладке «Размер» я могу указать более точную высоту и ширину картинки, а также масштаб ее относительно некоторых элементов или исходного размера в процентах.

Изменение высоты и ширины картинки в MS Word через окно «Макет»

Ввожу точные значения по высоте и ширине, после чего принимаю изменения

Использование макросов

Для изменения размера огромного количества картинок за раз можно использовать макросы. Это специальная опция, позволяющая оптимизировать в приложении одну определенную задачу и настроить ее повтор в дальнейшем. Необходимо просто записать определенные шаги, необходимые для изменения размера изображений. Перейти к данной утилите можно через вкладку «Вид». Нахожу соответствующий элемент в списке доступных функций, жму по нему для выхода контекстного меню, затем выбираю элемент «Макросы».

Как создать макрос для изменения размера нескольких изображений в Word

Вот в этом разделе я буду создавать макросы

В новом окне в поле «Имя» введу наименование, которое я предполагаю дать новому макросу, к примеру, «Размеры». После этого жму на кнопку «Создать».

Как создать макрос для настройки размера картинок в Word

Ввожу название для будущего макроса, только потом жму на кнопку «Создать»

В результате откроется окно «Microsoft Visual Basic For Applications». После чего в активном поле ввожу вот такое значение.

Sub Размеры

Dim i As Long

With ActiveDocument

For i = 1 To .InlineShapes.Count

With .InlineShapes (i)

.Height = 300

.Width = 800

End With

Next i

End With

End Sub

Здесь я задаю высоту в 300 пикселей, а ширину – в 800, но значения можно задать на свое усмотрение. После копирования сохраняю параметр, нажав на комбинацию клавиш Ctrl + S. Далее выхожу из этого активного окна.

Создание нового макроса в Microsoft Word

Ввожу данное значение в поле и сохраняю изменения

После этого вновь, тем же способом, открываю окно «Макросы», выбираю только что созданный пункт и жму на кнопку «Выполнить». После этого размеры изображений будут изменяться автоматически и подгоняться под указанные мной рамки.

Как активировать готовый макрос для изменения размера изображений в Word

Макрос готов, теперь осталось только активировать его нажатием на кнопку «Выполнить»

Заключение

Менять размеры изображений в документе Microsoft Word можно несколькими способами, причем как кучкой, так и по одной картинке. Выбирать стоит исходя из своих потребностей, при этом учитывать вид документа в дальнейшем. Ведь если картинка потерпит сильные изменения, информация на ней может отображаться недостаточно четко. 

Post Views: 19 274

Иван задал вопрос:

Есть документ Word с картинками (их много) и текстом. Необходимо «ужать» количество страниц. Уменьшить шрифт текста — понятно, но как уменьшить размер всех картинок одновременно, скажем, на 50%?

Сделать это можно с помощью следующего макроса:

Первый вариант:

Sub changeImages()
Dim iShape As InlineShape 
For Each iShape In ActiveDocument.InlineShapes 
  iShape.Height = iShape.Height * 0.5 
  iShape.Width = iShape.Width * 0.5 
Next iShape 
End sub

Второй вариант для объектов класса Shape или InlineShape:

Sub changeImages2()
Dim pic As Object
On Error Resume Next
For Each pic In ActiveDocument.Content.InlineShapes 
  If pic.Type = wdInlineShapePicture Then 
    pic.Height = pic.Height / 2 
    pic.Width = pic.Width / 2 
  End If 
Next 
For Each pic In ActiveDocument.Content.ShapeRange 
  If pic.Type = msoPicture Then 
    pic.Height = pic.Height / 2 
      If pic.LockAspectRatio = msoFalse Then 
        pic.Width = pic.Width / 2 
      End If 
  End If 
Next
End sub

Представьте себе — вы хотите вставить несколько изображений в документ Word. Изначально картинки имеют разный размер, но вы хотите, чтобы в документе они были одинакового размера. Хотя можно воспользоваться помощью подходящих инструментов для редактирования фотографий, иногда у вас нет к ним доступа. В таких ситуациях вы можете использовать сам Microsoft Word, чтобы изменить размер всех картинок.

Изменить размер всех изображений в Microsoft Word Fi

Нельзя отрицать тот факт, что Microsoft Word великолепен, когда дело доходит до текста. Но если вы углубитесь в него, вы обнаружите его скрытые функции, связанные и с другими вещами, такими как редактирование фотографий. Например, знаете ли вы, что прямо в Word можно придать изображению идеально круглую форму?

Точно так же вы можете делать картинки одинакового размера в Word. Давайте посмотрим, как это сделать, используя два метода, упомянутых ниже.

Способ 1: использование макросов

Иногда нам хотелось бы, чтобы у нас была единственная кнопка, нажатие на которую автоматически выполняло сложную задачу. Это то что макросы делать в ворде.

Макросы автоматизируют определенную задачу, которая в противном случае потребовала бы многократного выполнения. Вы можете создать макрос, либо записав шаги, которые вы хотите выполнить, либо написав набор инструкций.

Поскольку нам нужно изменить размер всех изображений в MS Word, мы воспользуемся помощью макросов. Мы бы создали его, написав код для изменения размера фотографий. Не запутайтесь. Вот шаги в деталях:

Шаг 1: Откройте файл Word, в котором вы хотите сделать все картинки одинакового размера.

Шаг 2: Нажмите на первую фотографию в файле, чтобы выбрать ее. Затем нажмите на вкладку «Вид» вверху.

Изменить размер всех изображений в Microsoft Word 1

Шаг 3: Нажмите «Макросы».

Изменить размер всех изображений в Microsoft Word 2

Шаг 4: Откроется всплывающее окно. Введите имя в поле под именем макроса. Вы можете назвать это как угодно. Ради понимания мы бы назвали это Resize.

Затем нажмите «Создать».

Изменить размер всех изображений в Microsoft Word 3

Шаг 5: Откроется новое окно Microsoft Visual Basic для приложений. Выберите существующий код и удалите его.

Изменить размер всех изображений в Microsoft Word 4

Шаг 6: Затем скопируйте и вставьте один из следующих кодов в окно.

Тип A: используйте следующий код, если вы хотите изменить высоту и ширину в пикселях. Замените 500 и 600 своими значениями.

Sub resize() Dim i As Long с ActiveDocument For i = 1 To .InlineShapes.Count с .InlineShapes(i) .Height = 500 .Width = 600 End With Next i End With End Sub

Тип B: Используйте это, если вы хотите изменить размер в дюймах. Замените 2 на ваше значение.

Sub resize() Dim i As Long с ActiveDocument For i = 1 To .InlineShapes.Count с .InlineShapes(i) .Height = InchesToPoints(2) .Width = InchesToPoints(2) End With Next i End With End Sub

Тип C: Если вы хотите масштабировать изображения, вам поможет следующий код. Замените 30 и 40 вашими предпочтительными значениями.

Sub resize() Dim i As Long с ActiveDocument For i = 1 To .InlineShapes.Count с .InlineShapes(i) .ScaleHeight = 30 .ScaleWidth = 40 End With Next i End With End Sub

Шаг 7: После копирования закройте окно Microsoft Visual Basic для приложений, щелкнув значок крестика.

Изменить размер всех изображений в Microsoft Word 5

Шаг 8: Выбрав изображение, снова нажмите «Макросы» на вкладке «Вид».

Изменить размер всех изображений в Microsoft Word 6

Шаг 9: Откроется окно макросов. Нажмите «Выполнить» с выбранным макросом.

Изменить размер всех изображений в Microsoft Word 7

Как только вы нажмете кнопку «Выполнить», вы заметите, что размер изменится для всех изображений.

Изменить размер всех изображений в Microsoft Word 8

Способ 2: использование волшебного ключа

Знаете ли вы, что можете повторить последнее выполненное действие в приложениях Microsoft Office, просто нажав кнопку на клавиатуре? Это клавиша F4 в Windows и клавиша Y на Mac.

Совет:

Вот шаги для этого метода:

Шаг 1: Откройте документ Word, содержащий ваши изображения.

Шаг 2: Щелкните правой кнопкой мыши первое изображение и выберите «Размер и положение».

Изменить размер всех изображений в Microsoft Word 9

Шаг 3: В открывшемся окне «Макет» щелкните вкладку «Размер». Затем снимите флажок «Блокировать соотношение сторон». Введите требуемые значения высоты и ширины изображений в данные поля. Нажмите «ОК».

Изменить размер всех изображений в Microsoft Word 10

Шаг 4: Вы заметите, что размер выбранного изображения изменится. Теперь щелкните другие изображения одно за другим и нажмите клавишу F4 (или fn + F4 в Windows) или клавишу Y (в macOS) для каждого из них. Это повторит действие, выполненное в шаге 3 — изменение высоты и ширины изображения.

Примечание

Размер важен

Хорошо организованный документ с изображениями подходящего размера выглядит лучше, чем неорганизованный. Хотя приведенные выше методы позволят вам выполнить намеченную задачу по изменению размера всех изображений, мы бы хотели, чтобы был простой способ. Пока мы не получим это, вам придется полагаться на два метода, упомянутых выше. Если вы знаете другой способ, мы всегда слушаем в комментариях ниже.

Далее: Хотите изменить тему для продуктов Microsoft Office? Узнайте, как изменить тему и отключить темный режим в Word, Excel и PowerPoint по данной ссылке.

Post Views: 10 075

Создание документа Microsoft Word нередко предполагает вставку в него изображений, которые могут быть как подготовленными, так и неподготовлеными, в смысле имеющими разный размер. Чтобы документ выглядел опрятно, вставляемые в него картинки желательно привести к некоему общему знаменателю, например, отмасштабировать или изменить размер по ширине. Если изображений много и задавать им нужный размер в графическом редакторе нет особого желания, вставляйте их в Word в исходном виде.

А остальную работу перепоручите скрипту.

Да, масштабировать изображения и подгонять их под нужный размер можно с помощью макросов на языке VBS, причем за один раз можно обработать сколько угодно картинок, сэкономив таким образом массу времени.

Предположим, вы хотите, чтобы все вставленные в документ картинки имели размер 300 пикселей по ширине.

Откройте ваш Word-документ и нажмите Alt + F11, чтобы вызвать окно редактора Microsoft Visual Basic for Applications и выберите в меню «Insert» -> «Module».

Microsoft Visual Basic for Applications

В открывшемся окошке вставьте код из приложенного в конце инструкции текстового файла, смотрите блок «Изменение размера». Измените значение переменной .Width на 300, а строку .Height уберите вовсе, так как при изменении ширины высота будет изменена автоматически пропорционально.

Width

Запустите скрипт на исполнение нажатием кнопки Run или клавиши F5.

Следующий скрипт позволяет масштабировать вставленные изображения: точно так же замените в нем значение параметра .ScaleWidth на свое, что же касается параметра .ScaleHeight , то его можно удалить.

ScaleWidth

Похожую работу выполняет этот скрипт, позволяющий установить масштабирование в диалоговом окошке, появляющемся сразу после запуска на исполнение.

Code

Resize Pictrue

Файл с кодом макросов:

Macros

Загрузка…

0 / 0 / 0

Регистрация: 03.04.2022

Сообщений: 3

1

04.04.2022, 00:00. Показов 1740. Ответов 5


Студворк — интернет-сервис помощи студентам

В программировании большой новичок!
По работе необходимо составлять фототаблицы, иногда бывает по 500 фоток, нашел макрос для Word, немного его переправил (чтобы без таблицы вставлялись фото) и почти всё как надо, кроме сохранения пропорций, нужно переделать так, чтобы вводить только высоту картинок, а по ширине сохранялись пропорции, в общем делал-делал как вдруг офис закрылся (странно, без ошибок, просто завершился процесс) и теперь вставляю макрос который ранее работал, а он не работает, пишет «run time error 424 object required» несколько раз с самого начала делал все процедуры что и раньше, но не работает.
Помогите пожайлуста

Это мой переделанный:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Sub ShowFileDialog()
    With Application.FileDialog(msoFileDialogFilePicker)
        .Title = "Выбор фотографий"
        .Filters.Add "Изображения", "*.jpg; *.jpeg"
        .AllowMultiSelect = True
        If .Show = -1 Then
            InsertPhotos .SelectedItems
        End If
    End With
 
End Sub
 
Sub InsertPhotos(ByVal items As Variant)
    Dim fileName As Variant
    Dim pic As InlineShape
    WidthSize = InputBox("Введите высоту картинок в сантиметрах", "Высота", 9)
    HeightSize = InputBox("Введите ширину картинок в сантиметрах", "Ширина", 6.8)
    For Each fileName In items
        'Вставка изображения
        Set pic = Range.InlineShapes.AddPicture(fileName)
        With pic
            .Width = CentimetersToPoints(WidthSize)
            .Height = CentimetersToPoints(HeightSize)
        End With
    Next
End Sub

Это исходный:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
'Выбор файла
Sub ShowFileDialog()
    With Application.FileDialog(msoFileDialogFilePicker)
        .Title = "Выбор фотографий"
        .Filters.Add "Изображения", "*.jpg; *.jpeg"
        .AllowMultiSelect = True
        If .Show = -1 Then
            InsertPhotos .SelectedItems
        End If
    End With
 
End Sub
 
'Вставка фотографий
Sub InsertPhotos(ByVal items As Variant)
    Dim fileName As Variant
    Dim counter As Integer, row As Long, col As Long
    counter = 1: row = 1: col = 1
    Dim oTbl As Table
    Dim pic As InlineShape
    'Параметры страницы
    With ActiveDocument.PageSetup
        .TopMargin = CentimetersToPoints(1)
        .LeftMargin = CentimetersToPoints(1)
        .RightMargin = CentimetersToPoints(1)
        .BottomMargin = CentimetersToPoints(1)
    End With
    'Таблица с невидимыми границами для размещения фотографий
    Set oTbl = ActiveDocument.Tables.Add(Selection.Range, 2, 2)
    oTbl.Range.ParagraphFormat.Alignment = wdAlignParagraphCenter
    oTbl.Range.ParagraphFormat.SpaceAfter = 12
    FormatTableRow oTbl, row
    
    'Перебор выбранных файлов
    For Each fileName In items
        If (counter > 2) And (counter Mod 2 <> 0) Then
            oTbl.Rows.Add
            oTbl.Rows.Add
            col = 1
            row = row + 2
            FormatTableRow oTbl, row
        End If
        'Вставка изображения
        Set pic = oTbl.Cell(row, col).Range.InlineShapes.AddPicture(fileName)
        With pic
            .Width = CentimetersToPoints(9)
            .Height = CentimetersToPoints(6.8)
            With .Line
                .Style = msoLineThinThin
                .ForeColor.TintAndShade = 0
                .Weight = 2#
                .DashStyle = msoLineSolid
            End With
        End With
        'Подпись к изображению
        oTbl.Cell(row + 1, col).Range.Text = "Фото №" + CStr(counter)
        col = col + 1
        counter = counter + 1
        DoEvents
    Next
End Sub
 
'Форматирование строки для фотографий
Sub FormatTableRow(oTbl As Table, row As Long)
    With oTbl.Rows(row)
        .HeightRule = wdRowHeightAtLeast
        .Height = 0
        .Range.ParagraphFormat.SpaceAfter = 0
    End With
End Sub



0



Понравилась статья? Поделить с друзьями:
  • Word макрос при сохранении
  • Word макрос при печати
  • Word макрос при открытии документа
  • Word макрос номер страницы
  • Word макрос не найден или отключен по соображениям безопасности