Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

mehrere Comboboxen füllen

Forumthread: mehrere Comboboxen füllen

mehrere Comboboxen füllen
25.06.2003 12:09:15
Lutz
Hallo Experten,

ich möchte mehrere Comboboxen einer Userform mit den gleichen Werten füllen. Wie kann ich diese Comboboxen in einer Schleife ansprechen ?

Danke
Lutz

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: mehrere Comboboxen füllen
25.06.2003 12:14:40
Andi_H

hi lutz, wenns alle combos sein soll dann gehts so:

dim cb as object

for each cb in userform1.controls
if typename(cb) = "ComboBox" then
cb.additem 'dein text
end if
next

gruß andi

Re: mehrere Comboboxen füllen
25.06.2003 12:15:20
L.Vira

Option Explicit
Private Sub UserForm_Initialize()
Dim x As Byte, y As Byte
For x = 1 To 3
For y = 1 To 10
Controls("Combobox" & x).AddItem "Irgendwas" & y
Next
Next
End Sub

Anzeige
Dank Euch beiden.....
25.06.2003 12:22:10
Lutz



Re: mehrere Comboboxen füllen
25.06.2003 12:23:11
ChrisL

Hallo Lutz

Oder du füllst nur eine Combobox und füllst am Ende die anderen Combobox mit dem Inhalt der ersten Combobox...

z.B.

'Combobox1 füllen
dim i as byte
for i = 2 to 10
Controls("ComboBox" & i).List = ComboBox1.List
Next i

Gruss
Chris

clever.....Danke !
25.06.2003 12:42:22
Lutz



Anzeige
;

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

Infobox / Tutorial

Mehrere Comboboxen in Excel UserForm füllen


Schritt-für-Schritt-Anleitung

  1. UserForm erstellen: Öffne dein Excel und erstelle eine UserForm.

  2. Comboboxen hinzufügen: Füge mehrere Comboboxen zu deiner UserForm hinzu. Du kannst sie im Toolbox-Fenster auswählen.

  3. VBA-Editor öffnen: Klicke mit der rechten Maustaste auf die UserForm und wähle „Code anzeigen“.

  4. Code eingeben: Füge den folgenden Code in die UserForm_Initialize-Prozedur ein, um die Comboboxen zu füllen:

    Private Sub UserForm_Initialize()
       Dim cb As Object
       For Each cb In Me.Controls
           If TypeName(cb) = "ComboBox" Then
               cb.AddItem "Wert 1"
               cb.AddItem "Wert 2"
               cb.AddItem "Wert 3"
           End If
       Next cb
    End Sub
  5. UserForm ausführen: Schließe den VBA-Editor und führe die UserForm aus. Du solltest nun sehen, dass alle Comboboxen mit den angegebenen Werten gefüllt sind.


Häufige Fehler und Lösungen

  • Fehler: „Typ Mismatch“ beim Ausführen des Codes.

    • Lösung: Stelle sicher, dass alle Controls in deiner UserForm vom Typ ComboBox sind. Überprüfe die Namen der Controls.
  • Fehler: Comboboxen bleiben leer.

    • Lösung: Vergewissere dich, dass der Code in der UserForm_Initialize-Prozedur korrekt platziert ist und dass beim Laden der UserForm die Prozedur automatisch aufgerufen wird.

Alternative Methoden

Eine alternative Methode besteht darin, nur eine Combobox mit Werten zu füllen und dann die anderen Comboboxen mit diesen Werten zu befüllen. Hier ist ein Beispiel:

Private Sub UserForm_Initialize()
   Dim i As Byte
   For i = 1 To 10
       ComboBox1.AddItem "Wert " & i
   Next i

   For i = 2 To 10
       Controls("ComboBox" & i).List = ComboBox1.List
   Next i
End Sub

Diese Methode ist besonders nützlich, wenn du viele Comboboxen hast und sicherstellen möchtest, dass sie den gleichen Inhalt haben.


Praktische Beispiele

  1. Füllen von drei Comboboxen:

    Private Sub UserForm_Initialize()
       Dim x As Byte, y As Byte
       For x = 1 To 3
           For y = 1 To 10
               Controls("ComboBox" & x).AddItem "Item " & y
           Next y
       Next x
    End Sub
  2. Dynamisches Füllen basierend auf einer Auswahl: Wenn du eine Combobox hast, die andere Comboboxen basierend auf der Auswahl füllt, kannst du den folgenden Code verwenden:

    Private Sub ComboBox1_Change()
       Dim i As Integer
       ComboBox2.Clear
       For i = 1 To 10
           ComboBox2.AddItem "Option " & i & " für " & ComboBox1.Value
       Next i
    End Sub

Tipps für Profis

  • Namen der Comboboxen konsistent halten: Achte darauf, dass deine Comboboxen eine einheitliche Namenskonvention verwenden. Dies erleichtert die Programmierung.
  • Fehlerbehandlung einfügen: Füge Fehlerbehandlungsroutinen in deinen Code ein, um unerwartete Fehler zu vermeiden.
  • Code modularisieren: Überlege, ob du Funktionen erstellen kannst, um den Code lesbarer und wartungsfreundlicher zu gestalten.

FAQ: Häufige Fragen

1. Frage
Wie kann ich die Werte einer Combobox dynamisch ändern?
Antwort: Du kannst die Change-Ereignisprozedur der Combobox nutzen, um auf Änderungen zu reagieren und den Inhalt anderer Comboboxen entsprechend anzupassen.

2. Frage
Welche Excel-Version benötige ich für UserForms?
Antwort: UserForms sind in den meisten modernen Excel-Versionen verfügbar, einschließlich Excel 2010, 2013, 2016, 2019 und Microsoft 365.

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