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

Forumthread: erster wert in combobox

erster wert in combobox
18.09.2007 22:27:03
Holger
Hallo liebe Excelianer,
ich wähle mit einer Combobox in einer UF einen Werte aus, und lasse zugehörige werte in Textboxen ausgeben. Beim erneuten öffnen der cb möchte ich gerne das der erste Wert der Tabelle wieder angezeigt wird. Momentan bleibt die cb bei dem aktuell ausgewählten Wert stehen. Hoffe ich habe mich irgendwie verständlich gemacht/ausgedrückt ? Ist es irgenwie möglich?
Gruß und Dank
Holger

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: erster wert in combobox
19.09.2007 00:58:00
Daniel
Hi
du kannst mit 'Userform.Listindex = 1", einen bestimmten Eintrag der Userform per Makro auswählen (ggf ist es auch 0, einfach mal ausprobieren)
Hilft dir das weiter?
Gruß, Daniel

AW: erster wert in combobox
19.09.2007 01:15:00
Holger
hallo daniel,
bin zu blöd...zu dieser stunde, mit
With ComboBox1
.ListIndex = 1
End With
habe ich im Comboboc1_change ereignis eingebaut, jetzt läst sich ber nur noch der erste eintrag auswählen und kein anderer mehr...oder muß dasin ein anderes erignis?
gruß
holger

Anzeige
AW: erster wert in combobox
19.09.2007 04:44:00
Wuxinese
Hallo Holger,
setz es ins Userform.Activate Ereignis. Dann sollte es gehen. Combobox_Change kann nicht gehen, weil Du damit sagst, das immer, wenn irgendwas in der Combobox ausgewaehlt wird, sofort danach automatisch der erste Eintrag ausgewaehlt wird.
Gruss
Rainer

AW: erster wert in combobox
19.09.2007 08:06:17
Hajo_Zi
Hallo Rainer,
das siehst Du falsch, es geht auch mit dem Change Ereignis.
If Combobox1.Tag"" then Exit sub
Combobox1.Tag="1"
Combobox1.Listindex=0
'restlicher Code
Combobox1.Tag=""
mal ungetestet.

Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Erster Wert in einer Combobox anzeigen


Schritt-für-Schritt-Anleitung

Um den ersten Wert in einer Combobox in Excel anzuzeigen, kannst du folgendes Vorgehen nutzen:

  1. Öffne das VBA-Editor-Fenster (Alt + F11).

  2. Füge ein UserForm hinzu, falls du das noch nicht gemacht hast.

  3. Füge eine Combobox (ComboBox1) und Textboxen hinzu, um die zugehörigen Werte anzuzeigen.

  4. Nutze den folgenden VBA-Code, um den ersten Eintrag beim Aktivieren des UserForms anzuzeigen:

    Private Sub UserForm_Activate()
       With ComboBox1
           .ListIndex = 0 ' Setzt den ersten Wert in der Combobox
       End With
    End Sub
  5. Stelle sicher, dass du die Combobox mit Werten befüllst, bevor du das UserForm aktivierst. Du kannst dies im UserForm_Initialize-Ereignis tun:

    Private Sub UserForm_Initialize()
       ComboBox1.AddItem "Wert 1"
       ComboBox1.AddItem "Wert 2"
       ComboBox1.AddItem "Wert 3"
    End Sub

Häufige Fehler und Lösungen

  • Problem: Der erste Wert wird nicht angezeigt, wenn das UserForm aktiviert wird.

    • Lösung: Stelle sicher, dass der Code im UserForm_Activate-Ereignis platziert ist. Wenn du ihn im ComboBox1_Change-Ereignis verwendest, wird der erste Eintrag nicht angezeigt, nachdem du einen anderen Wert ausgewählt hast.
  • Problem: Nach dem Setzen des ListIndex kann kein anderer Eintrag mehr ausgewählt werden.

    • Lösung: Überprüfe, ob du den Code im ComboBox1_Change-Ereignis korrekt implementiert hast. Verwende einen Tag, um zu verhindern, dass der Code mehrfach ausgeführt wird:
    Private Sub ComboBox1_Change()
       If ComboBox1.Tag <> "" Then Exit Sub
       ComboBox1.Tag = "1"
       ComboBox1.ListIndex = 0 ' Setzt den ersten Wert
       ComboBox1.Tag = "" ' Tag zurücksetzen
    End Sub

Alternative Methoden

Eine Alternative zur Verwendung von VBA ist das Setzen des ersten Wertes direkt in der Excel-Oberfläche, wobei du die Datenquelle der Combobox so einstellen kannst, dass der erste Wert immer ausgewählt bleibt. Dies funktioniert am besten, wenn du mit einer dynamischen Datenquelle arbeitest.


Praktische Beispiele

Hier ist ein einfaches Beispiel zur Illustration:

Angenommen, du hast eine Liste von Ländern in einer Excel-Tabelle. Du kannst diese Liste in eine Combobox laden, sodass der erste Wert (z.B. "Deutschland") immer angezeigt wird, wenn das UserForm geöffnet wird. Nutze den oben genannten Code und passe die Listenelemente entsprechend an.


Tipps für Profis

  • Experimentiere mit verschiedenen Ereignissen, um den besten Zeitpunkt zum Setzen des ListIndex zu finden.

  • Nutze die .List-Eigenschaft der Combobox, um mehrere Werte gleichzeitig zu setzen, zum Beispiel:

    ComboBox1.List = Array("Wert 1", "Wert 2", "Wert 3")
  • Überlege, wie du die Benutzereingaben validieren kannst, um sicherzustellen, dass nur gültige Einträge in die Textboxen eingefügt werden.


FAQ: Häufige Fragen

1. Wie kann ich den ersten Wert in einer Combobox anzeigen, wenn das UserForm geöffnet wird? Du kannst den VBA-Code im UserForm_Activate-Ereignis verwenden, um den ersten Eintrag auszuwählen, wie im Tutorial beschrieben.

2. Was ist der Unterschied zwischen ListIndex = 0 und ListIndex = 1? ListIndex = 0 bezieht sich auf den ersten Eintrag in der Combobox, während ListIndex = 1 den zweiten Eintrag auswählt. In VBA ist die Indizierung nullbasiert.

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