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

Datensätze in Combobox zählen

Forumthread: Datensätze in Combobox zählen

Datensätze in Combobox zählen
25.10.2017 17:40:06
VpG
Hallo,
nachdem mir das Forum schon bei vielen Dingen zu meiner userform geholfen hat kommt hier noch eine Frage.
Ich wähle über 3 Comboboxen einen Datensatz aus einer Tabelle.
Nach der Auswahl der 2 Combobox erhalte ich noch eine gewisse Anzahl an Daten, die in Combobox 3 auswählbar sind. Genau das hätte ich noch als Info in einem Textfeld angezeigt, nämlich wie viele Datensätze sich nach Auswahl der Comboboxen 1 und 2 in der Combobox 3 verbergen.
Ich denke, es wird in der Beispieldatei deutlich:
https://www.herber.de/bbs/user/117226.xlsm
Vielen Dank für Eure Mühen....
VpG
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datensätze in Combobox zählen
25.10.2017 17:43:07
Hajo_Zi

Private Sub ComboBox2_Change()
'Namen auswählen
kat = Me.ComboBox2.Value
If Me.ComboBox2.ListIndex  -1 Then
Me.ComboBox3.Clear
For zeile = 2 To letzte
If werte(zeile, 2) = kat And werte(zeile, 1) = Me.ComboBox1 Then
Me.ComboBox3.AddItem werte(zeile, 3)
End If
Next zeile
MsgBox ComboBox3.ListCount
End If
End Sub


Ich gebe keinen Dank für eine Rückmeldung, da ich durch solche Beiträge nicht meine Beitragszahl erhöhen muss.
Also ich schreibe keine Beiträge mit dem Betreff "Gerne u. Danke für die Rückmeldung. o.w.T."
Rückmeldung ist ja in der Heutigen Zeit nicht üblich und die wenigen die eine Rückmeldung geben, mögen mir das verzeihen, das kein Danke für eine Rückmeldung kommt.
Beiträge von Werner, Luc, robert und folgende lese ich nicht.
Anzeige
;
Anzeige

Infobox / Tutorial

Datensätze in Combobox zählen


Schritt-für-Schritt-Anleitung

Um die Anzahl der Datensätze in einer Combobox auszulesen, kannst Du den folgenden VBA-Code verwenden. Dieser Code zählt die verfügbaren Einträge in ComboBox3 basierend auf der Auswahl in ComboBox1 und ComboBox2.

  1. Öffne den VBA-Editor in Excel (ALT + F11).
  2. Wähle das entsprechende UserForm aus, in dem sich die Comboboxen befinden.
  3. Füge den folgenden Code in das entsprechende Modul ein:
Private Sub ComboBox2_Change()
    ' Namen aus ComboBox2 auswählen
    Dim kat As String
    kat = Me.ComboBox2.Value
    If Me.ComboBox2.ListIndex <> -1 Then
        Me.ComboBox3.Clear
        Dim zeile As Long
        For zeile = 2 To letzte ' "letzte" muss definiert werden
            If werte(zeile, 2) = kat And werte(zeile, 1) = Me.ComboBox1 Then
                Me.ComboBox3.AddItem werte(zeile, 3)
            End If
        Next zeile
        MsgBox "Anzahl der Datensätze: " & ComboBox3.ListCount
    End If
End Sub
  1. Stelle sicher, dass Deine Daten in einem geeigneten Bereich (z.B. werte) definiert sind.

Häufige Fehler und Lösungen

  • Fehler: Compile error: Variable not defined

    • Lösung: Stelle sicher, dass alle verwendeten Variablen wie letzte und werte korrekt deklariert und initialisiert sind.
  • Fehler: MsgBox gibt nicht die erwartete Anzahl zurück

    • Lösung: Überprüfe, ob die Bedingungen in der Schleife korrekt sind und ob die Daten in den Comboboxen wie gewünscht ausgewählt werden.

Alternative Methoden

Eine alternative Methode zur Zählung der Datensätze in ComboBox3 wäre die Verwendung von Excel-Formeln oder Power Query. Diese Optionen sind besonders nützlich, wenn Du Daten dynamisch analysieren möchtest, ohne auf VBA zurückzugreifen.

  • Power Query: Importiere Deine Daten in Power Query und filtere sie nach den Kriterien aus ComboBox1 und ComboBox2. Du kannst dann die Anzahl der verbleibenden Datensätze direkt anzeigen lassen.

Praktische Beispiele

Beispiel: Angenommen, Du hast eine Tabelle mit folgenden Daten:

Kategorie Subkategorie Produkt
Obst Äpfel Granny
Obst Äpfel Gala
Obst Banane Cavendish
Gemüse Karotte Nantes

Wenn Du in ComboBox1 "Obst" und in ComboBox2 "Äpfel" auswählst, sollte ComboBox3 die Produkte "Granny" und "Gala" anzeigen. Der MsgBox würde dann die Anzahl "2" anzeigen.


Tipps für Profis

  • Verwende With-Blöcke, um den Code lesbarer und effizienter zu gestalten.
  • Füge Fehlerbehandlungsroutinen hinzu, um mögliche Laufzeitfehler abzufangen.
  • Überlege, ob Du die Datenquelle in einer Tabelle anstatt in einem Bereich verwaltest, um die Wartung zu vereinfachen.

FAQ: Häufige Fragen

1. Wie kann ich die Anzahl der Datensätze in einer anderen Combobox anzeigen?
Du kannst den gleichen Code anpassen, indem Du die entsprechende Combobox und deren ListCount verwendest.

2. Funktioniert dieser Code in Excel 2016?
Ja, der Code sollte in Excel 2016 und neueren Versionen ohne Probleme funktionieren, solange Du die richtigen Objekte verwendest und die Variablen korrekt definierst.

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