Bilder in Excel vergrößern mit einem Klick

Letzte Woche habe ich die Anfrage aus der Community bekommen, wie man es denn schaffen könne Bilder in Excel per Mausklick zu vergrößern. Dies hat mich überlegen lassen --- hhmmm wieso sollte man das überhaupt wollen?

Nun bin ich aber mit einem sinnvollen Use Case um die Ecke gekommen. Bilder verwenden, um dein Zahlenmaterial mit qualitativen Informationen zu bereichern. Hierzu habe ich bisher Userforms verwendet (bei mehr Interesse hierzu schau dir meinen Artikel zu Popups an)

Leider gibt es keine Möglichkeit in Excel Bilder ohne VBA zu vergrößern per Mausklick. Jedoch ist der Aufwand sehr überschaubar und der Effekt umso größer :) 

Excel Bild vergrößern mit einem Mausklick
Bild vergrößern in Excel mit einem Mausklick

Das Tolle ist nämlich mit einem weiteren Mausklick nimmt das Bild wieder seine Ursprungsgröße an. 

Hierdurch kann der verfügbare Platz (der bei Excel ja meist eher zu gering ausfällt) optimal genutzt werden.

Das Tutorial zum bequem anschauen

Der Bilder Zoom Effekt in Excel zum nachbauen

Ich habe für mein Beispiel einfach mein ultimatives Excel Dashboard als Vorlage verwendet. Hier macht die Bildvergrößerung auf jeden Fall Sinn und ist nicht nur ein reines Spielzeug.

Nun aber werden wir mal konkret. 

Schritt 1: Suche dir ein Bild aus und füge es in deine Arbeitsmappe ein

Schritt 2: Passe die Bildgröße so an, dass es für dich passt (Ausgangssituation)

Excel Bildgröße anpassen um später per Mausklick zu vergrößern
Bildgröße anpassen für die Ausgangssituation

Schritt 3: Rechtsklick auf das Bild und Makro zuweisen drücken

Makro zuweisen für Bild vergrößern Excel
Bild Makro zuweisen

Schritt 4: Gebe deinem Makro einen Namen und drücke auf "neu". Füge dann folgenden VBA Code in den Editor ein:

 

Dim Faktor As Double

    With ActiveSheet.Shapes(Application.Caller)

        Faktor = IIf(.Width > 50, 1 / 16, 16)

        .ScaleWidth Faktor, msoFalse, msoScaleFromTopLeft

        .ScaleHeight Faktor, msoFalse, msoScaleFromTopLeft

    End With

 

Der Code gehört zwischen 

Sub "dein Makroname" ()

und

End Sub

VBA Code zum Bild vergrößern in Excel
VBA Code

Schritt 5: Du kannst den Zoomfaktor in der 3. Codezeile anpassen, je nachdem inwieweit du dein Bild vergrößern willst.

In meinem Beispiel beträgt die Vergrößerung x16. 

Möchtest du nur eine zweifache Vergrößerung haben, würde dein Code folgendermaßen lauten:

Faktor = IIf(.Width > 50, 1 / 2, 2)

Schritt 6: Schließe den VBA Editor und teste dein neu erstelltes Makro

Fazit

Aus meiner Sicht bietet die Bildvergrößerung eine tolle Alternative zur Verwendung von User Forms. Klar, man ist nicht so flexibel wie bei meinen beliebten Excel Popups aber es sieht dafür eine Spur besser aus. 

Sinnvoll ist die Verwendung jedoch nur bei Bildern, die über eine längere Zeit relevant sind und nicht bei jedem neuen Report neu erstellt werden müssen.

Weitere Tutorials

Kommentar schreiben

Kommentare: 4
  • #1

    Excelmexel (Donnerstag, 23 Januar 2020 15:36)

    Ich habe ein Foto genommen, aber beim Zoomen war es sehr sehr Pixelig - was kann ich tun?

  • #2

    VFT123 (Mittwoch, 29 Januar 2020 10:15)

    @Exelmexel
    Ich hatte dasselbe Problem. Du musst in den Einstellungen etwas ändern und zwar:
    Unter Datei/Optionen/Erweitert unter dem Punkt "Bildgröße und -Qualität" einen Hacken bei "Bilder nicht in Datei komprimieren" setzen.

  • #3

    Stephen Nawlins (Donnerstag, 13 Februar 2020 09:05)

    Ich habe es ausprobiert und wenn ich auf das Bild klicke wird es kleiner und nicht grösser.
    Was mache ich falsch?

  • #4

    VFT123 (Donnerstag, 20 Februar 2020 13:37)

    @ Stephen Nawlins
    Das Problem hatte ich auch. Das ist echt schwer zu erklären, aber ich gebe mein bestes.
    Du musst das Bild kleiner ziehen. Wenn du beispielsweise einen Vergrößerungsfaktor von 3 hast, darfst du das Bild (mit Makros) nicht in dieselbe Größe ziehen, so wie du es ja per Mausklick haben willst. Du musst das Bild ca. 3 fach kleiner ziehen, damit das Bild dann bei anklicken 3 fach so groß wird. Einigermaßen verstanden?