Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Image (Grafik) in Userform drehen

Image (Grafik) in Userform drehen
25.10.2017 14:32:28
Dieter(Drummer)
Guten Tag VBA Spezialisten,
auf Userform1 ist eine Grafik (Image) "Pfeil1". Dieser "Pfeil1" soll sich bei Klick auf den Pfeil1 drehen. Mein Makro zeigt einen Fehler: "Laufzeitfehler 9", Index außerhalb des gültigen Bereichs" und Zeile
  • Set objShp = Sheets("Userform1").Shapes("Pfeil1")

  • wird gelb markiert.
    Hier mein Code und meine Musterdatei:
  • 
    Private Sub Pfeil1_Click()
    Dim objShp As Shape
    Set objShp = Sheets("Userform1").Shapes("Pfeil1")
    objShp.Rotation = objShp.Rotation + 45
    Set objShp = Nothing
    End Sub
    

  • Die Datei https://www.herber.de/bbs/user/117209.xlsm wurde aus Datenschutzgründen gelöscht


    Mir der Bitte um Hilfe, grüßt
    Dieter(Drummer)
    Anzeige

    10
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Image (Grafik) in Userform drehen
    25.10.2017 14:42:32
    EtoPHG
    Hallo Dieter,
    Was ist denn das für ein Code?
    Ein Worksheet "Userform1" existiert nicht in deiner Datei!
    Ein Image-Control ist kein Shape-Objekt!
    Ein Image in einer Userform lässt sich nicht rotieren!
    Einfacher Ansatz: Für jede Stellung ein Image in die Userform übereinanderlegen und jeweils das "Richtige" (d.h. das Nächste) in der ZOrder Eigenschaft nach oben schieben!
    Gruess Hansueli
    Anzeige
    AW: Image (Grafik) in Userform drehen
    25.10.2017 14:49:34
    Dieter(Drummer)
    Danke Hansueli,
    das mit den übereinderliegenden Images, kannte ich ich, hatte jedoch die Hoffnung, es geht auch anders.
    Danke für deinen Hinweis und
    Gruß, Dieter(Drummer)
    AW: Image (Grafik) in Userform drehen
    25.10.2017 14:42:51
    Nepumuk
    Hallo Dieter,
    das Bild in deinem Userform ist kein Shape sondern ein Image-Control. Das kannst du nicht drehen. Ich werde dir mal was basteln um es doch zu drehen, dauert aber ein bisschen.
    Gruß
    Nepumuk
    Anzeige
    AW: Image (Grafik) in Userform drehen
    25.10.2017 14:47:05
    Dieter(Drummer)
    Danke Nepumuk,
    du hattest mir ja gestern schon sehr und perfekt geholfen.
    Freue mich dann auf eine Lösung von dir. Bitte kein Streß, es eilt überhaupt nicht.
    Herzlichen Dank vorab und Gruß,
    Dieter(Drummer)
    AW: Danke Nepumuk, perfekt ...
    25.10.2017 14:59:45
    Dieter(Drummer)
    ... aber da musste ja eine Menge Codes für her.
    Wenn ich das richtig probiert haben, geht es nur mit dem Pfeil (Image) auf dem Tabellenblatt in Verbindung.
    Herzlichen Dank für deine erneute Hilfe und perfekt funktionierende Lösung.
    Gruß, Dieter(Drummer)
    wozu soll das denn gut sein? drehender Pfeil :-(
    25.10.2017 15:02:34
    robert
    Kompass, wenn der Hahn kräht a d M, ... owT
    27.10.2017 10:13:07
    lupo1
    Anzeige
    AW: drehender Pfeil mit Text
    25.10.2017 15:31:20
    Daniel
    Hi
    wenns tatsächlich um einen Pfeil geht der um 45° gedreht werden soll, dann könne es eventuell ausreichen, ein Label anzulegen und mit der Schriftart Wingdings3 zu formatierten.
    in Wingdings3 gibt es Pfeile in 45°-Schritten als normales Zeichen (ASCII-Code 209-216, 217-224, 225-232)
    du müsstest also bei KLick nur das richtige Zeichen ins Label schreiben.
    https://www.herber.de/bbs/user/117218.xlsm
    Gruß Daniel
    Anzeige
    AW: Danke Daniel ...
    25.10.2017 15:43:48
    Dieter(Drummer)
    ... auch eine mögliche Variante, die auch gut funktioniert.
    Herzlichen Dank und
    Gruß, Dieter(Drummer)
    ;

    Forumthreads zu verwandten Themen

    Anzeige
    Entdecke relevante Threads

    Schau dir verwandte Threads basierend auf dem aktuellen Thema an

    Alle relevanten Threads mit Inhaltsvorschau entdecken
    Anzeige
    Anzeige

    Infobox / Tutorial

    Grafik in Userform drehen: So geht's


    Schritt-für-Schritt-Anleitung

    1. Userform erstellen: Öffne Excel und erstelle eine neue Userform. Füge ein Image-Control hinzu, das die Grafik enthält, die du drehen möchtest.

    2. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

    3. Code einfügen: Füge den folgenden Code in das Userform-Modul ein:

      Private Sub Image1_Click()
         Dim objImg As Image
         Set objImg = Me.Image1
         ' Hier wird der Bildwinkel um 45 Grad erhöht
         objImg.Picture = LoadPicture("C:\DeinPfad\DeinBild.jpg") ' Bild laden
         objImg.Rotation = objImg.Rotation + 45
         Set objImg = Nothing
      End Sub
    4. Bild anpassen: Stelle sicher, dass das Bild im richtigen Format vorliegt und sich im angegebenen Pfad befindet.

    5. Testen: Starte die Userform und klicke auf das Bild. Es sollte sich um 45 Grad drehen.


    Häufige Fehler und Lösungen

    • Laufzeitfehler 9: Dieser Fehler tritt auf, wenn das angegebene Shape oder Image-Control nicht existiert. Überprüfe den Namen des Controls.

    • Rotation nicht möglich: Beachte, dass ein Image-Control in einer Userform nicht direkt gedreht werden kann. Eine mögliche Lösung ist das Überlagern mehrerer Images.


    Alternative Methoden

    Wenn das Drehen eines Bildes in einer Userform nicht funktioniert, kannst du folgende Alternativen in Betracht ziehen:

    1. Label verwenden: Erstelle ein Label und formatiere es mit der Schriftart Wingdings3. Dort sind Pfeile in verschiedenen Winkeln als Zeichen vorhanden.

    2. Bild in Excel drehen: Du kannst ein Bild auf einem Arbeitsblatt drehen, indem du es auswählst und dann die Formatierungsoptionen verwendest.


    Praktische Beispiele

    1. Pfeil drehen: Nutze ein Label mit einem Pfeilzeichen (ASCII-Code 209) und ändere den Text bei jedem Klick, um den Pfeil in 45-Grad-Schritten zu „drehen“.

    2. Bild in Zelle drehen: In Excel kannst du Bilder in einer Zelle drehen, indem du das Bild auswählst, mit der rechten Maustaste klickst und „Drehen“ wählst.


    Tipps für Profis

    • Verwendung von Shapes: Wenn du Shapes verwendest, kannst du deren Rotation direkt über VBA steuern. Shapes bieten mehr Flexibilität als Bilder in Userforms.

    • Animationen: Überlege, ob du eine Animation während der Drehung erstellen möchtest, um die Benutzererfahrung zu verbessern.

    • Daten in Word übertragen: Wenn du deine Excel-Daten in Word verwenden möchtest, achte darauf, die Bilder korrekt zu drehen, indem du die Funktion „Bild drehen in Word“ nutzt.


    FAQ: Häufige Fragen

    1. Kann ich ein Bild in Excel ohne VBA drehen?
    Ja, du kannst ein Bild direkt in Excel drehen, indem du es auswählst und die Rotationsgriffe verwendest.

    2. Wie kann ich ein Bild in Word drehen?
    In Word kannst du ein Bild auswählen und dann die Formatierungsoptionen für Bilder verwenden, um es zu drehen.

    3. Warum kann ich das Bild nicht in der Userform drehen?
    Ein Bild in einer Userform ist kein Shape und kann daher nicht direkt gedreht werden. Du kannst stattdessen mehrere Images übereinander legen oder ein Label verwenden.

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Entdecke mehr
    Finde genau, was du suchst

    Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

    Suche nach den besten Antworten
    Unsere beliebtesten Threads

    Entdecke unsere meistgeklickten Beiträge in der Google Suche

    Top 100 Threads jetzt ansehen
    Anzeige