VBA gefilterte Daten mit textbox in listbox anzeig

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
UserForm ListBox TextBox MsgBox
Bild

Betrifft: VBA gefilterte Daten mit textbox in listbox anzeig
von: benny
Geschrieben am: 01.06.2015 17:08:37

Hallo zusammen,
ich habe folgendes Problem:
Ich habe eine Tabelle mit zwei Spalten. In Spalte A sind verschiedene Namen und in Spalte B verschiedene Codes aufgelistet. Jedem Code sind unterschiedlich viele Namen zugeordnet. Zum Beispiel gehören zum Code 509080 die Namen Hans, Otto udn Gustav.
Ich habe zwei Userforms erstellt. Mit der ersten Userform soll mit einer Textbox ein jeweiliger Code eingebenen werden und die dazugehörigen Namen in einer Listbox in einer zweiten Userform aufgelistet werden.
Den Code zur ersten Userform (siehe unuten) hab ich schon hinbekommen und der funktioniert auch soweit, aber mit der zweiten weiß ich gerade absolut keinen Anfang wie cih das in der Syntax so darstellen kann, dass nur die Werte der Spalte A (Namen) welche den gleichen Code haben angezeigt werden.
Vielen Dank im Voraus für eure Unterstützung.

Private Sub Button1_Click()
    Dim x As String
    Z = Sheets(1).UsedRange.Rows.Count
    x = TextBox1
    temp = 0
    For i = 2 To Z
        If Cells(i, 2) = x Then
            temp = 1
            Exit For
        End If
    Next
    If temp = 1 Then
        Unload Me
        zeile = i
        UserForm2.Show
    Else
        MsgBox "Commodity Code nicht vorhanden!", vbExclamation
        TextBox1 = ""
    End If
End Sub

Bild

Betrifft: Beispieltabelle ?
von: ransi
Geschrieben am: 01.06.2015 17:18:54
Hallo Benny,
Wahrscheinlich hat man schneller einen Code geschrieben als 2 Userforms und eine passende Beispieltabelle gebastelt.
Lade doch mal deine Beispieltabelle hoch.
Dann kann man testen.
ransi

Bild

Betrifft: AW: Beispieltabelle ?
von: benny
Geschrieben am: 01.06.2015 17:30:41
Ja das stimmt die Beispieltabelle war nciht einfach zu basteln ;)
Ist natürlich nicht das orginal wegen der sensiblen Daten aber mit dem simplen Beispiel ist mein Problem am einfachsten verdeutlicht.
https://www.herber.de/bbs/user/97968.xlsx

Bild

Betrifft: Userforms ??
von: ransi
Geschrieben am: 01.06.2015 17:45:09
Hallo Benny,
Wo sind die Userforms ?
Versuch mal so:

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public Liste() As Variant

' **********************************************************************
' Modul: UserForm1 Typ: Userform
' **********************************************************************

Option Explicit

Private Sub Button1_Click()
    Dim Z As Long, temp As Long, i As Long, zeile As Long
    Dim x As String
    Z = Sheets(1).UsedRange.Rows.Count
    x = TextBox1
    temp = 0
    Redim Liste(temp)
    For i = 2 To Z
        If Cells(i, 2) = x Then
            Redim Preserve Liste(temp)
            Liste(temp) = Cells(i, 1).Value
            temp = temp + 1
        End If
    Next
    If temp > 0 Then
        Unload Me
        With UserForm2
            .ListBox1.List = Liste
            .Show
        End With
    Else
        MsgBox "Commodity Code nicht vorhanden!", vbExclamation
        TextBox1 = ""
    End If
End Sub


ransi

Bild

Betrifft: AW: Userforms ??
von: benny
Geschrieben am: 02.06.2015 14:54:34
Super vielen Dank. Funktioniert mega ;)

 Bild

Beiträge aus den Excel-Beispielen zum Thema "VBA gefilterte Daten mit textbox in listbox anzeig"