MS WordPýtate sa

Ako súčasne zmeniť rozmery viacerých obrázkov vo Worde

Existuje viacero možností. Azda najpomalšou je nastavovať rozmery pri každom obrázku individuálne. My si teraz ukážeme rýchlejšie spôsoby:

  • využitie klávesy F4;
  • a ešte rýchlejšie – vytvorenie makra.

Využitie funkčnej klávesy F4

Klikneme na 1. obrázok a nastavíme požadovanú veľkosť obrázka – napr. pri zachovanom pomere strán nastavíme výšku 1,2 cm.

Následne klikneme na ďalší obrázok a stlačíme funkčnú klávesu F4. Zmena nastavení sa automaticky prejaví aj na tomto obrázku.

Rovnako postupujeme aj pri ďalších obrázkoch: klik na obrázok a stlačenie klávesy F4.

Použitie makra

Uvažujme ten istý príklad – každý obrázok, ktorý má výšku väčšiu ako 1,2 cm potrebujeme zmenšiť na 1,2 cm a šírku automaticky prispôsobiť. Napísal som nasledovné makro, ale netvrdím, že nie je možné vytvoriť aj ďalších X makier s rovnakým výsledkom. Môžete skúšať 🙂

Predpokladám, že ste si už prečítali článok Vytváranie makier vo Worde, tak môžete nasledovne makro ihneď vyskúšať.

Sub ZmenObrazky()
Dim obr As Long
With ActiveDocument
For obr = 1 To .InlineShapes.Count
With .InlineShapes(obr)
If .Height >= CentimetersToPoints(1.2) Then
Dim koef As Integer
koef = .Height / 1.2
.Height = CentimetersToPoints(1.2)
.Width = CentimetersToPoints(.Width / koef)
End If
End With
Next obr
End With
End Sub

Kedy toto makro môžeme potrebovať? Napríklad pri vytváraní obrázkových diktátov na 1. stupni ZŠ, kedy je potrebné pri jeho vytváraní jednotlivým obrázkom nastaviť jednotnú výšku.

Zmena veľkosti vybraných obrázkov

Označiť viaceré obrázky môžeme tak, že klikneme ľavým tlačidlom myši na 1 obrázok, následne stlačíme CTRL a potom klikáme na ďalšie obrázky ľavým tlačidlom myši a pridávame ich tak k výberu. Uvedené funguje len vtedy, ak majú obrázky nastavené zarovnanie iné ako zarovno s textom.

V prípade, ak majú obrázky nastavené „zarovnanie s textom“, tak označujeme klasicky vrátane textu ťahaním ľavým tlačidlom. Nášmu makru to vadiť nebude.

A teraz najskôr jednoduchšia verzia makra, ktorá neoveruje aktuálnu výšku obrázka a predpokladá, že pri všetkých obrázkoch je uzamknutý pomer strán.

Sub ZmenObrazky()
Dim obr As InlineShape
For Each obr In Selection.InlineShapes
With obr
.Height = CentimetersToPoints(9)
End With
Next
End Sub

A teraz zložitejšia verzia, ktorá overuje aktuálnu výšku a prepočítava aj šírku, čím predpokladáme možné odomknutie pomeru strán.

Sub ZmenObrazky()
Dim obr As InlineShape
Dim vyska As Integer
Dim koef As Integer
Dim sirkapovodna As Integer
vyska = CentimetersToPoints(2)
For Each obr In Selection.InlineShapes
With obr
If .Height > vyska Then
koef = .Height / vyska
sirkapovodna = .Width
.Height = vyska
If .Width > sirkapovodna Then
.Width = .Width / koef
End If
End If
End With
Next
End Sub

V tomto prípade je zadefinovaná aj premenná vyska, kde stačí pri neskoršej úprave len zmeniť na potrebnú výšku, makro uložiť a následne používať.

25 tipov a trikov v Exceli,
ktoré musíte milovať 🥰

5-denný emailový kurz (text + video)
Neskôr každý týždeň 1 email s ďalšími tipmi

Zásady spracúvania osobných údajov