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

Forumthread: Combobox 1 Wert anzeigen

Combobox 1 Wert anzeigen
02.12.2008 11:49:00
Kurt
Hallo,
ich möchte in meiner Combobox beim anklicken das immer der 1. Wert
angezeigt wird,
danke im voraus,
gruß kurt
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Combobox 1 Wert anzeigen
02.12.2008 11:57:00
Matthias
Hallo
Vorschlag:
wenn Du es beim ComboBox1_Click-Ereinis machen willst, so klappt das nicht.
mach es also erst beim Verlassen, sonst kannst Du ja nie einen Wert auswählen
dadurch steht immer der erste Wert in der Box

Private Sub ComboBox1_LostFocus()
ComboBox1.ListIndex = 0
End Sub


Gruß Matthias

Anzeige
Das ist soweit ... Noch eine Fehlermeldung
02.12.2008 12:21:41
Kurt
Hallo Matthias,
das ist soweit i.o. , vielleicht kannst Du mir aber hier auch weiterhelfen.
Ich habe das Makro:
Dim FI$
Dim z As Long
Dim sp
Tabelle11.ComboBox1.ListFillRange = "P1:P1000"
ActiveSheet.Range("A5:M5").Select
If Not ActiveSheet.AutoFilterMode Then
Selection.AutoFilter
End If
FI = Tabelle11.ComboBox1.Text
Selection.AutoFilter Field:=3, Criteria1:=FI & "*" ', Operator:=xlAnd
End Sub
Habe mir vom Forum zusammengesucht und angepaßt.
Leider kommt eine Fehlermeldung:
"Die Autofiltermethode konnt nicht ausgeführt werden" Laufzeitfehler 1004
Dielterpfeile sind gesetzt und auch die richtige Spalte, wenn ich jetzt Filter aufheben will
bleibt hier stehen:
Selection.AutoFilter
gruß Kurt
mfg Kurt
Anzeige
Bitte dringend HELFEN !
02.12.2008 16:08:57
Kurt
Hallo Matthias,
WARUM fängt das Makro wieder von vorn an ?
Dim FI$
Dim z As Long
Dim sp
Tabelle11.ComboBox1.ListFillRange = "P1:P1000"
ActiveSheet.Range("A5:M5").Select
If Not ActiveSheet.AutoFilterMode Then
Selection.AutoFilter
End If
FI = Tabelle11.ComboBox1.Text
Selection.AutoFilter Field:=3, Criteria1:=FI & "*" ', Operator:=xlAnd
End Sub
ich habe mit F8 das Makro durchlaufen lassen und festgestellt das es wieder
von vorn anfängt.
gruß Kurt
Anzeige
Habe Fehler gefunden oder ?
02.12.2008 18:59:00
Kurt
Guten Abend Matthias,
wenn ich diese Zeile reinsetze wird das Makro immer wieder gestartet u.
dadurch die Fehlermeldung.
Wie kann ich den sonst die Liste einlesen?
gruß Kurt
AW: Combobox 1 Wert anzeigen
02.12.2008 12:47:04
Kurt
Hallo matthias,
habe mal so reingesetzt:
Tabelle11.ComboBox1.ListFillRange = "P1:P1000"
ActiveSheet.Range("A5:M5").Select
If Not ActiveSheet.AutoFilterMode Then
Selection.AutoFilter
FI = Tabelle11.ComboBox1.Text
ActiveSheet.Range("A5:M5").Select
Selection.AutoFilter Field:=3, Criteria1:=FI & "*", Operator:=xlAnd
End If
wenn ich jetzt neu Auswählen möchte geht das nicht, wenn ich Filter entfernen möchte,
bleibt hier wieder stehen:
Selection.AutoFilter
gruß Kurt
Anzeige
Jetzt läuft es aber habe alles doppelt
02.12.2008 20:16:00
Kurt
Hallo Matthias,
jetzt ist es i.o.
aber ich habe bei jedem klicken doppelt in der Combobox.

Private Sub ComboBox1_Change()
'Dim i
'ActiveSheet.ComboBox1.Clear


Hast Du einen Tip ?
gruß Kurt

Erledigt !!! Danke -)
03.12.2008 08:54:58
Kurt
Guten Morgen Matthias,
jetzt läuft es so:
Dim FI$
ActiveSheet.Unprotect (getStrPasswort)
ComboBox1.List = Range("O1:O100").Value <<<< hiermit !!!!!!!!!
Range("A5:M5").Select
If Not ActiveSheet.AutoFilterMode Then
Selection.AutoFilter
End If
ActiveSheet.Unprotect (getStrPasswort)
Range("B3").Select
FI = Tabelle11.ComboBox1.Text
Columns(sp).AutoFilter Field:=3, Criteria1:=FI & "*", Operator:=xlAnd
' Selection.AutoFilter Field:=3, Criteria1:=FI & "*", Operator:=xlAnd
If Tabelle11.ComboBox1.ListIndex = 0 Then
Selection.AutoFilter
End If
End Sub
Danke für die Unterstützung,
schönen Tag noch...
gruß Kurt
Anzeige
AW: Erledigt !!! Danke -)
03.12.2008 09:21:51
Matthias
Hallo
Sorry, Kurt
ich habe gestern kurz nach 12 das Haus verlassen und habe Deine Beiträge soeben erst lesen können.
Ich hatte Dich also nicht vergessen, sondern ich hatte keine Zeit mehr.
Gut, das Du es doch geschafft hast ...
... und ich wünsch Dir auch einen schönen Tag
Gruß Matthias
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Combobox in Excel: Den ersten Wert anzeigen und Probleme beheben


Schritt-für-Schritt-Anleitung

Um in einer ComboBox in Excel den ersten Wert anzuzeigen, kannst du folgende Schritte befolgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor in Excel (Alt + F11).

  2. Füge den folgenden Code in das Modul der entsprechenden UserForm oder des Arbeitsblatts ein:

    Private Sub ComboBox1_LostFocus()
       ComboBox1.ListIndex = 0
    End Sub
  3. Dieser Code setzt den ListIndex der ComboBox auf 0, was bedeutet, dass der erste Wert angezeigt wird, wenn die ComboBox den Fokus verliert.


Häufige Fehler und Lösungen

Fehler 1: Laufzeitfehler 1004

  • Problem: Du erhältst den Fehler "Die Autofiltermethode kann nicht ausgeführt werden".
  • Lösung: Stelle sicher, dass du die richtige Range für den Autofilter ausgewählt hast. Prüfe, ob die Autofilter aktiviert sind, bevor du den Filter anwendest.

Fehler 2: Doppelte Einträge in der ComboBox

  • Problem: Bei jedem Klick auf die ComboBox erscheinen doppelte Werte.
  • Lösung: Verwende den folgenden Code, um die ComboBox vor dem Hinzufügen neuer Werte zu leeren:

    Private Sub ComboBox1_Change()
       ActiveSheet.ComboBox1.Clear
       ' Füge hier den Code zum Hinzufügen der Werte ein
    End Sub

Alternative Methoden

Wenn du eine andere Methode zur Anzeige des ersten Wertes in der ComboBox verwenden möchtest, kannst du auch die ComboBox1_Change-Ereignisprozedur nutzen. Setze den ListIndex so, dass er auf den ersten Wert verweist, wenn der Benutzer die Auswahl ändert. Beispiel:

Private Sub ComboBox1_Change()
    If ComboBox1.ListIndex = -1 Then
        ComboBox1.ListIndex = 0
    End If
End Sub

Praktische Beispiele

Hier ist ein Beispiel, wie du die ComboBox mit Werten füllen und den ersten Wert anzeigen kannst:

Private Sub UserForm_Initialize()
    With ComboBox1
        .AddItem "Wert 1"
        .AddItem "Wert 2"
        .AddItem "Wert 3"
        .ListIndex = 0 ' Setze den ersten Wert als Standard
    End With
End Sub

Dieser Code wird in der UserForm_Initialize-Prozedur verwendet und sorgt dafür, dass beim Laden der Form der erste Wert automatisch ausgewählt wird.


Tipps für Profis

  • Achte darauf, dass die ComboBox nicht nur im LostFocus-Ereignis, sondern auch im Change-Ereignis behandelt wird, um unerwünschte Effekte zu vermeiden.
  • Verwende Fehlerbehandlungsroutinen in deinem VBA-Code, um Laufzeitfehler elegant zu verwalten.
  • Teste deinen Code gründlich in verschiedenen Szenarien, um sicherzustellen, dass er robust ist.

FAQ: Häufige Fragen

1. Wie kann ich die Werte in der ComboBox dynamisch aktualisieren?
Du kannst die ComboBox mit einem VBA-Makro aktualisieren, das die Werte aus einem bestimmten Bereich in deinem Arbeitsblatt liest.

2. Warum funktioniert der Autofilter nicht?
Überprüfe, ob der Autofilter korrekt eingerichtet ist und dass die Range, auf die du zugreifst, nicht leer ist.

3. Kann ich mehrere ComboBoxes gleichzeitig aktualisieren?
Ja, du kannst den Code entsprechend anpassen, um mehrere ComboBoxes in einer UserForm oder auf einem Arbeitsblatt gleichzeitig zu aktualisieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige