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

Vba per Vba ändern -Bilder in Userform austauschen

Forumthread: Vba per Vba ändern -Bilder in Userform austauschen

Vba per Vba ändern -Bilder in Userform austauschen
24.05.2007 04:20:12
Heinrich
Hallo Ihr Wissenden :)
ich möchte gerne per VBA in eine Userform Bilder in eine Vielzahl von Images eintragen (bzw. austauschen), und zwar nicht zur Laufzeit, sondern im Entwurfsmodus .
Die Images 1-63 gibt es bereits in der Userform, ich möchte nur die Pictures darin automatisiert austauschen können.
Ich habe im Archiv was ähnliches gefunden, aber wenn ich das so einfach abwandle wie ich mir das naiv vorstelle geht es leider nicht.
Hier so wie's nicht geht:

With ThisWorkbook.VBProject.VBComponents("UserForm1")
Dim j As Integer
For j = 1 To 63
.Images(i).Picture = LoadPicture(bildname & j & ".jpg")
Next
End With


Wer kann mir sagen wies geht?
Danke für Eure Mühe :).
Heinrich B.

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vba per Vba ändern -Bilder in Userform austauschen
24.05.2007 04:52:00
Mustafa
Hallo Heinrich,
ohne jetzt den Code ausprobiert zu haben, mal ein tipp ins Blaue.
Wie ich sehe hast du bei der zeile :
.Images(i).Picture = LoadPicture(bildname & j & ".jpg")
einmal i und enmal j stehen.
Kann das schon der fehler gewesen sein ?
Rückmeldung obs hilft wäre nett.
Viele Grüße aus Köln.

Anzeige
AW: Vba per Vba ändern -Bilder in Userform austaus
25.05.2007 00:53:26
Heinrich
hallo mustafa :)
danke für den Hinweis. aber an i und j bestimmt nicht, das war ein tippfehler, weil ich für den thread einiges vereinfacht habe um das prinzip heruszuarbeiten. ... aber es hätte ja gut sein können ;-)
wie jens schreibt geht das was ich will wohl nicht. schade.
grüße
Heinrich

Anzeige
AW: Vba per Vba ändern -Bilder in Userform austauschen
24.05.2007 18:48:00
Jens
Hi,
das geht nur zur Laufzeit!
mfg Jens

AW: Vba per Vba ändern -Bilder in Userform austaus
25.05.2007 00:49:36
Heinrich
hallo Jens,
vielen dank. find ich schade dass es nicht geht.
gibt es denn eine möglichkeit bilder vom tabellenblatt nach userform.image zu übertragen und umgekehrt (zur laufzeit)
Danke
Heinrich
;
Anzeige
Anzeige

Infobox / Tutorial

Bilder in einer Userform per VBA austauschen


Schritt-für-Schritt-Anleitung

Um Bilder in einer Userform per VBA auszutauschen, kannst Du die folgenden Schritte befolgen. Beachte, dass die Anpassungen im Entwurfsmodus von Excel nicht möglich sind; die Änderungen müssen zur Laufzeit durchgeführt werden.

  1. Öffne die Userform in Deinem VBA-Editor.

  2. Füge eine Schaltfläche hinzu, die den Austausch der Bilder auslöst.

  3. Verwende den folgenden VBA-Code, um die Bilder auszutauschen:

    Private Sub CommandButton1_Click()
       Dim j As Integer
       Dim bildname As String
       bildname = "C:\DeinPfad\Bild" ' Passe den Pfad an
    
       For j = 1 To 63
           Me.Controls("Image" & j).Picture = LoadPicture(bildname & j & ".jpg")
       Next j
    End Sub
  4. Ersetze den bildname mit dem Pfad, wo Deine Bilder gespeichert sind.

  5. Starte die Userform und klicke auf die Schaltfläche, um die Bilder auszutauschen.


Häufige Fehler und Lösungen

  • Fehler: Bild nicht gefunden

    • Lösung: Stelle sicher, dass der Pfad zu den Bildern korrekt ist und die Bilder tatsächlich vorhanden sind.
  • Fehler: Typenkonflikt

    • Lösung: Überprüfe, ob die Bildsteuerelemente in der Userform korrekt benannt sind (z. B. Image1, Image2, usw.).

Alternative Methoden

Wenn Du Probleme mit dem Austausch von Bildern in der Userform hast, kannst Du auch folgende Methoden in Betracht ziehen:

  • Direktes Einfügen von Bildern über das Tabellenblatt: Du kannst Bilder in ein Tabellenblatt einfügen und von dort zur Userform wechseln.

  • Verwendung von PowerPoint: Wenn Du eine Präsentation erstellen möchtest und Bilder in einer PowerPoint-Folie ändern möchtest, kannst Du die Funktion PowerPoint.Bild.FormÄndern verwenden, um Bilder auszutauschen. Dies ist besonders nützlich, wenn Du eine Präsentation mit dynamischen Inhalten erstellen möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du den Bilder-Austausch in einer Userform umsetzen kannst:

  1. Austausch von Profilbildern: Wenn Du eine Software zur Verwaltung von Benutzerdaten hast, kannst Du Profilbilder in einer Userform dynamisch laden.
  2. Bildgalerie: Erstelle eine Userform, die eine kleine Bildgalerie anzeigt und es dem Benutzer ermöglicht, zwischen verschiedenen Bildern zu wechseln.

Tipps für Profis

  • Verwende Arrays für die Bildnamen: Um die Effizienz zu steigern, kannst Du die Bildnamen in einem Array speichern und die Schleife entsprechend anpassen.

    Dim bildnamen(1 To 63) As String
    For j = 1 To 63
      bildnamen(j) = bildname & j & ".jpg"
    Next j
  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung, um sicherzustellen, dass Dein Code auch bei Problemen stabil bleibt.


FAQ: Häufige Fragen

1. Kann ich Bilder in einer Userform im Entwurfsmodus austauschen?
Leider ist das nicht möglich. Die Bilder müssen zur Laufzeit ausgetauscht werden.

2. Welche Excel-Version wird benötigt?
Dieser Code funktioniert in Excel 2010 und höher. Achte darauf, dass die VBA-Referenzen korrekt gesetzt sind.

3. Wie kann ich die Größe der Bilder anpassen?
Du kannst die Eigenschaften Width und Height der Bildsteuerelemente in der Userform einstellen, um die Größe der Bilder anzupassen.

4. Was tun, wenn ich einen Typenkonflikt erhalte?
Überprüfe die Typen der Steuerelemente und stelle sicher, dass Du die richtigen Datentypen verwendest.

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