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

combobox in userform füllen

Forumthread: combobox in userform füllen

combobox in userform füllen
28.01.2003 10:36:24
daniel g.
hallo excel-begeisterte,

ich bin mal wieder auf ein kleines problem gestoßen, wozu zwr schon ne menge geschrieben wurde, mir aber irgendwie nicht schlüssig ist.

P: ich habe eine userform, in der ich eine combobox eingefügt habe. mit hilfe dieser möchte ich die textboxen in der userform füllen.
mein PROBLEM liegt nun darin, die daten der spalte a (von zeile 13 bis x aus der aktiven tabelle in die combobox zu listen. x ist dabei eine variable, mit der ich die letzte beschriebene zeile ermittle.

vielleicht kann mir jemand kurz den aufbau des nötigen vba-codes erklären, denn immer nur das raussuchen und kopieren bringt einen ja auch nicht weiter.

einen dicken dank an alle die, die mir versuchen zu helfen.
daniel


Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: combobox in userform füllen
28.01.2003 10:41:58
Urs

Hallo Daniel
So was in der Art meinst Du, oder?

Private Sub UserForm_Initialize()
...x definieren
With Worksheets("Tabelle")
CmBox.List = .Range("A13:A" & x & ").Value
End With
end sub

Gruss
Urs

Re: combobox in userform füllen
28.01.2003 10:54:32
daniel g.

hallo urs,

ich probiere es nachher gleich mal aus, nur hab ich zu deinem code zwei fragen:

1. der "." vor range muß doch sicher weg oder?
2. das einbringen der variablen "x" klappt irgendwie nicht, wie ist das mit den "&" gemeint?

danke dir schon mal.

daniel

Anzeige
Re: combobox in userform füllen
28.01.2003 11:02:59
Urs

Hallo Daniel
Der Punkt bleibt, aber sonst ein Fehler von mir, sorry... Nach dem x kein & und " mehr.... also

CmBox.List = Worksheets("Tabelle1").Range("A13:A" & x).Value

sollte eigentlich gehen..

Gruss
Urs

Re: combobox in userform füllen
28.01.2003 13:21:02
daniel g.

hallo nochmal urs,

ich habe den befehl hinsichtlich der aktiven zeile angepaßt und es funzt!!! :-)) danke dir.

habe halt nur immer leite probleme die forumsbeiträge auch nachzuvollziehen, also zu verstehen und selbst anwenden zu können. so auch bei der combobox, wo es anscheinend einige unterschiedliche befehle gibt um werte um übernehmen... (naja).

dank dir.
gruß daniel

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Combobox in Userform füllen mit VBA


Schritt-für-Schritt-Anleitung

Um eine Combobox in einer Userform mit Daten aus einer Excel-Tabelle zu füllen, gehe folgendermaßen vor:

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

  2. Erstelle eine Userform: Gehe zu Einfügen > UserForm.

  3. Füge eine Combobox hinzu: Ziehe eine Combobox (ComboBox) aus der Toolbox auf die Userform.

  4. Initialisiere die Combobox: Füge den folgenden Code in das Codefenster der Userform ein:

    Private Sub UserForm_Initialize()
        Dim x As Long
        x = Worksheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row
        With Me.ComboBox1
            .Clear
            .List = Worksheets("Tabelle1").Range("A13:A" & x).Value
        End With
    End Sub
  5. Starte die Userform: Drücke F5, um die Userform zu testen. Die Combobox sollte nun mit den Daten aus der angegebenen Tabelle gefüllt sein.


Häufige Fehler und Lösungen

  • Fehler bei der Range: Wenn du einen Fehler erhältst, dass der Range nicht gefunden werden kann, überprüfe, ob der Arbeitsblattname korrekt ist. Beispiel: Worksheets("Tabelle1") muss exakt mit dem Tabellennamen übereinstimmen.

  • Combobox bleibt leer: Stelle sicher, dass die Zeilen in der Spalte A tatsächlich Daten enthalten. Wenn x nicht korrekt ermittelt wird, könnte die Liste leer bleiben.

  • Punkt vor Range: Der Punkt vor Range im Code ist notwendig, um auf die Range innerhalb des Worksheet-Objekts zuzugreifen. Lass diesen nicht weg.


Alternative Methoden

  1. Daten aus mehreren Spalten: Wenn du die Combobox mit mehreren Spalten füllen möchtest, kannst du diese mit einer Schleife hinzufügen. Beispiel:

    Dim cell As Range
    For Each cell In Worksheets("Tabelle1").Range("A13:A" & x)
        Me.ComboBox1.AddItem cell.Value
    Next cell
  2. Dropdown in Userform: Du kannst auch ein Dropdown-Menü verwenden, das ähnlich funktioniert wie die Combobox. Der Code bleibt weitgehend derselbe, nur dass du die Dropdown-Funktionalität anpassen musst.


Praktische Beispiele

  • Beispiel 1: Wenn du nur bestimmte Daten in die Combobox einfügen möchtest, kannst du eine If-Bedingung verwenden, um nur die relevanten Daten zu filtern.

    Dim cell As Range
    For Each cell In Worksheets("Tabelle1").Range("A13:A" & x)
        If cell.Value <> "" Then
            Me.ComboBox1.AddItem cell.Value
        End If
    Next cell
  • Beispiel 2: Um die Combobox dynamisch mit einem Button zu füllen, kannst du folgenden Code verwenden:

    Private Sub CommandButton1_Click()
        Call UserForm_Initialize
    End Sub

Tipps für Profis

  • Datenbindung: Überlege, ob du die Combobox an eine Datenquelle binden möchtest, um die Daten automatisch zu aktualisieren.
  • Fehlerbehandlung: Implementiere Error-Handling, um sicherzustellen, dass der Benutzer über mögliche Fehler informiert wird.
  • Verbesserte Benutzererfahrung: Füge Filter- oder Suchfunktionen hinzu, um die Benutzerfreundlichkeit der Combobox zu erhöhen.

FAQ: Häufige Fragen

1. Wie kann ich die Combobox mit dynamischen Daten füllen?
Du kannst die Datenquelle in der UserForm_Initialize-Prozedur dynamisch aktualisieren, indem du den Range anpasst.

2. Was mache ich, wenn die Userform nicht angezeigt wird?
Stelle sicher, dass du den richtigen Code zum Anzeigen der Userform verwendest, z. B. UserForm1.Show.

3. Kann ich die Combobox mit Daten aus mehreren Tabellen füllen?
Ja, du kannst den Code anpassen, um Daten aus verschiedenen Tabellen zu kombinieren, indem du die entsprechenden Worksheet-Objekte 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