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

Combobox-Mehrfachauswahl in eine Zelle schreiben

Forumthread: Combobox-Mehrfachauswahl in eine Zelle schreiben

Combobox-Mehrfachauswahl in eine Zelle schreiben
10.03.2003 22:42:27
Andreas
Moin,

kurze Frage..., wie lese ich einen dynamischen Zellbereich z.B. Startzelle A5:Ax (d.h. Ax kann nach unten wachsen) in eine Combobox ein, treffe eine Mehrfachauswahl mit gedrückter STRG-Taste und schreibe alle markierten Werte in eine Textbox.

Für eure Hilfe besten Dank

Andreas

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Combobox-Mehrfachauswahl in eine Zelle schreiben
10.03.2003 23:06:10
Klaus-Dieter
Hallo Andreas,

hier schon mal eine Lösung für den ersten Teil Deiner Frage:


Option Explicit
Private Sub UserForm_Initialize()
' weist einer ComboBox einen variablen Zellbereich zu
Dim z%
z = Range("A65536").End(xlUp).Row
ComboBox1.RowSource = "A1:A" & z
End Sub

Code eingefügt mit: Excel Code Jeanie
Gruß Klaus-Dieter
Klaus-Dieter's Excel und VBA Seite

Anzeige
... danke für den ersten Teil...
10.03.2003 23:15:42
Andreas
Hallo Klaus, vielen Dank!

Wünsche noch einen schönen Abend.

Andreas

Re: Combobox-Mehrfachauswahl in eine Zelle schreiben
10.03.2003 23:16:54
heinz
hi

ich hab das jetzt so verstanden:
du markierst was, hast schon eine form mit combo und willst dort den inhalt der markierung als auswahl zur verfügung haben.
wenns so ist, ich würds so machen:

Option Explicit
Dim element

Sub combo_fuellen()
For Each element In Selection
UserForm1.ComboBox1.AddItem element
Next
End Sub

Sub form_start()
UserForm1.Show
End Sub

dem combo_fuellen hab ich z.b. STRG und b gegeben (füllt die combo, die form ist aber noch nicht zu sehen) und dem form_start STRG und n (jetzt kommt die form mit einträgen in der combo)

gruß, heinz

Anzeige
Re: Combobox-Mehrfachauswahl in eine Zelle schreiben
10.03.2003 23:26:37
Andreas
Hallo Heinz,

ganz gut getroffen..., ich wollte aus der Combo heraus markieren und die Elemente in eine Textbox abschreiben..., aber wenn ich mir Dein Makro ansehe, dann muss ich ja nur aus

UserForm1.ComboBox1.AddItem element

UserForm1.textbox1.AddItem element machen...

und den Value in eine Tabellenzelle schreiben, oder?

Vielen Dank

Andreas

Anzeige
Re: Combobox-Mehrfachauswahl in eine Zelle schreiben
10.03.2003 23:40:14
heinz
wie kann man denn in einer combo mehrfach auswählen?
Sorry
10.03.2003 23:57:01
Andreas
... verdammt, sitze schon zu lange vor der Kiste, 15h..., ich meinte natürlich eine Listbox... ;-)

Ciao

Andreas

;

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

Combobox-Mehrfachauswahl in Excel richtig umsetzen


Schritt-für-Schritt-Anleitung

Um eine Combobox zur Mehrfachauswahl in Excel zu nutzen und die ausgewählten Werte in eine Zelle zu schreiben, gehe folgendermaßen vor:

  1. Öffne den VBA-Editor (ALT + F11).
  2. Füge ein UserForm hinzu: Rechtsklick auf "VBAProject" > Einfügen > UserForm.
  3. Füge eine ComboBox und eine TextBox hinzu: Ziehe die Steuerelemente von der Toolbox auf das UserForm.
  4. Setze den Zellbereich für die ComboBox:

    Option Explicit
    
    Private Sub UserForm_Initialize()
       Dim z As Long
       z = Range("A65536").End(xlUp).Row
       ComboBox1.RowSource = "A1:A" & z
    End Sub
  5. Füge ein Makro hinzu, um die Auswahl in die TextBox zu schreiben:

    Private Sub ComboBox1_Click()
       Dim selectedItems As String
       Dim i As Integer
    
       For i = 0 To ComboBox1.ListCount - 1
           If ComboBox1.Selected(i) Then
               selectedItems = selectedItems & ComboBox1.List(i) & ", "
           End If
       Next i
    
       ' Entferne das letzte Komma und Leerzeichen
       If Len(selectedItems) > 0 Then
           selectedItems = Left(selectedItems, Len(selectedItems) - 2)
       End If
    
       TextBox1.Value = selectedItems
    End Sub
  6. Füge mit einem Button die Werte in eine Zelle ein:
    Private Sub CommandButton1_Click()
       Range("B1").Value = TextBox1.Value ' Beispiel: Werte in Zelle B1 schreiben
    End Sub

Häufige Fehler und Lösungen

  • Fehler: Die ComboBox zeigt keine Werte an.

    • Lösung: Überprüfe, ob der Zellbereich korrekt angegeben ist und die Daten in den angegebenen Zellen vorhanden sind.
  • Fehler: Die TextBox zeigt nicht die ausgewählten Werte an.

    • Lösung: Stelle sicher, dass das Click-Ereignis der ComboBox korrekt implementiert ist.

Alternative Methoden

Falls Du eine ListBox für die Mehrfachauswahl verwenden möchtest, kannst Du diese einfach anstelle der ComboBox einsetzen. Der Code unterscheidet sich nur geringfügig:

  1. Ersetze ComboBox1 durch ListBox1.
  2. Ändere die Auswahlmethodik, um die ausgewählten Werte in die TextBox zu schreiben.

Beispiel:

Private Sub ListBox1_Click()
    ' Ähnlicher Code wie bei der ComboBox
End Sub

Praktische Beispiele

Hier ist ein Beispiel, wie Du eine ListBox zur Mehrfachauswahl nutzen kannst:


Private Sub UserForm_Initialize()
    Dim i As Integer
    For

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