Office: (Office 2010) Inhalt aus mehreren Textboxen in Tabelle suchen und in Listbox ausgeben

Helfe beim Thema Inhalt aus mehreren Textboxen in Tabelle suchen und in Listbox ausgeben in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Guten Morgen zusammen, hier im Forum bin ich auf folgenden Code gestoßen... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Robbie1985, 8. April 2020.

  1. Robbie1985 Neuer User

    Inhalt aus mehreren Textboxen in Tabelle suchen und in Listbox ausgeben


    Guten Morgen zusammen,

    hier im Forum bin ich auf folgenden Code gestoßen http://www.office-hilfe.com/support...xtBox-Inhalt-auf-anderem-Tabellenblatt-suchen. Für meine Tabelle/ VBA habe ich den Code schon angepasst und es funktioniert wunderbar.

    Mein eigentliches Problem ist, dass eine UserForm mit 3 TextBoxen zur Eingabe erstellt habe.

    TextBox 1 = Name
    TextBox 2 = Vormane
    TextBox 3 = Kundennummer

    Der oben genannte Code funktioniert super, wenn ich nur den Namen, oder nur den Vornamen oder nur die Kundennummer suchen möchte.

    Ich möchte aber auch folgende Konstellationen suchen können (und/oder):

    1. Name
    2. Name und Vorname
    3. Vorname
    4. Vorname und Kundennummer
    5. Kundennummer
    6. Name und Kundennummer
    7. Kundennummer
    8. Name, Vorname und Kundennummer

    Im Anhang habe ich die Datei eingefügt.

    Ich weiß leider nicht wie ich den Code anpassen muss um die Abfrage nach meinen Vorstellungen anzupassen.

    Vielen Dank für eure Hilfe im voraus.

    Viele Grüße Robbie1985
     
    Robbie1985, 8. April 2020
    #1
  2. Beverly
    Beverly Erfahrener User
    Hi Robbi,

    in dem alten Trhead hatte ich ja bereits den Hinweis gegeben, den Autofilter zu benutzen:

    Code:
    Private Sub Suchen_suchen_Click()
        Dim c As Range
        Dim rngBereich As Range
        Dim ctrElement As Control
        Suchergebnisse_suchen.Clear
        With Sheets("Kundendaten")
            Set rngBereich = .Range("A2").CurrentRegion
            If Not .AutoFilterMode Then rngBereich.AutoFilter
            .AutoFilter.ShowAllData
            For Each ctrElement In Me.Controls
                If [COLOR=#ff0000]ctrElement.Tag[/COLOR] <> "" Then
                    If ctrElement <> "" Then
                        rngBereich.AutoFilter Field:=CInt([COLOR=#ff0000]ctrElement.Tag[/COLOR]), Criteria1:=ctrElement.Value
                    End If
                End If
            Next ctrElement
            For Each c In rngBereich.Columns(1).SpecialCells(xlCellTypeVisible)
                If c.Row > 2 Then
                    Suchergebnisse_suchen.AddItem c.Offset(0, 3)
                    Suchergebnisse_suchen.List(Suchergebnisse_suchen.ListCount - 1, 1) = c.Offset(0, 5)
                    Suchergebnisse_suchen.List(Suchergebnisse_suchen.ListCount - 1, 2) = c.Offset(0, 4)
                End If
            Next c
            rngBereich.AutoFilter
        End With
    End Sub
    
    

    An 2 Stellen im Code siehst du, dass die Eingeschaft "Tag" der Steuerelemente benutzt wird. Diese Eigenschaft ist ein Hilfsmittel für den Programmierer, wo man wichtige Informationen unterbringen kann, die man im Code verwenden kann. Ich habe deshalb in die Tag-Eigenschaft jeder TextBox die Spaltennummer geschrieben, welche nach dem jeweiligen TextBox-Inhalt gefiltert werden muss. Das vereinfacht den Code dahingehend, dass in einer Schleife über alle Steuerelemente des UserForms gelaufen werden kann, dabei geprüft wird ob die Tag-Eingenschaft belegt ist und wenn ja, dann die betreffende Spalte gefiltert wird (wenn die TextBox gefüllt ist). Andernfalls müsste man mehrere If-Anweisungen schreiben um zu prüfen, welche deiner 8 Kombinationen erfüllt ist und dann jeweils die entsprechende(n) Spalte(n) filtern, was den Code ein großes Stück umfangreicher machen würde.

    Beachte auch, dass der Integer-Wert des Tag-Inhaltes für die Spaltennummer herangezogen wird, denn der Tag-Inhalt ist immer Text, so dass numerische Inhalte immer erst in einen numerischen Wert umgewandelt werden müssen - das nur als allgemeine Anmerkung zur Verwendung der Tag-Eigenschaft.

    Bis später,
    Karin
     
    Beverly, 8. April 2020
    #2
  3. Robbie1985 Neuer User
    Vielen Dank für die Hilfe Karin.
    Es funktioniert genau so wie ich es mir gedacht habe.

    Über die Funktionsweise des Autofilters werde ich moch nochmal genau belesen:)

    ich wünsche dir ein schönes Wochenende und schöne Ostern. Bleib geseund!

    Viele Grüße Robbie
     
    Robbie1985, 9. April 2020
    #3
Thema:

Inhalt aus mehreren Textboxen in Tabelle suchen und in Listbox ausgeben

Die Seite wird geladen...
  1. Inhalt aus mehreren Textboxen in Tabelle suchen und in Listbox ausgeben - Similar Threads - Inhalt mehreren Textboxen

  2. Mit Hyperlink mehrere Zellen(inhalt!) anwählen

    in Microsoft Excel Hilfe
    Mit Hyperlink mehrere Zellen(inhalt!) anwählen: Moin zusammen, ich habe folgendes Problem: Ich habe eine Arbeitsmappe mit zwei Tabellen, bei der ich auf dem zweiten Blatt eine Zelle, einen Hyperlink, anklicken möchte, sodass ich in das erste...
  3. Datensätze mit mehreren % Inhalten - Maximalwert ermitteln

    in Microsoft Access Hilfe
    Datensätze mit mehreren % Inhalten - Maximalwert ermitteln: Hallo, aus folgenden einfacher Access-Tabelle: ID|Name|Linie|Prozent 5000|Ware1|Minaral|16% 5000|Ware1|Pharma|64% 5000|Ware1|Logistik|20% 5002|Ware2|Minaral|40% 5002|Ware2|Pharma|20%...
  4. ComboBox zeigt Inhalt nicht mehr an

    in Microsoft Excel Hilfe
    ComboBox zeigt Inhalt nicht mehr an: Guten Morgen, nachdem ich gestern hier an anderer Stelle eine Frage eingestellt hatte, gab man mir den Tipp von der Verwendung mehrerer UserFormen Abstand zu nehmen. Das habe ich mir zu Herzen...
  5. Bestimmte Inhalte mehrerer Tabellenblätter auf separatem Blatt darstellen

    in Microsoft Excel Hilfe
    Bestimmte Inhalte mehrerer Tabellenblätter auf separatem Blatt darstellen: Hallo zusammen, in einer Mappe möchte ich die Inhalte in Spalte A der Blätter 1.0 und 1.1 auf dem Blatt 2.0 sammeln. Die Einträge sollen dort untereinander ohne Leerzeilen stehen, wenn der...
  6. Inhalte mehrer Spalten in zwei Spalten (untereinander)

    in Microsoft Excel Hilfe
    Inhalte mehrer Spalten in zwei Spalten (untereinander): Hallo, ich habe Daten, die wie in der Tabelle unten formatiert sind. Ich habe ein ähnliches Thema bereits im Forum gefunden: Einziger Unterschied ist, dass ich nicht nur eine Liste aller...
  7. Mehrere Zellen auf Inhalt überprüfen

    in Microsoft Excel Hilfe
    Mehrere Zellen auf Inhalt überprüfen: Hallo zusammen, für die Personalplanung in unserer Firma habe ich eine Excelliste angelegt. Wir haben maximal 6 Mitarbeiter, es müssen mindestens 3 da sein. Wenn durch Urlaub oder Krankmeldungen...
  8. Textbox Inhalt von einer Userorm in mehrere Userform kopieren

    in Microsoft Excel Hilfe
    Textbox Inhalt von einer Userorm in mehrere Userform kopieren: HI @ all Ich habe ein Problem ich habe 4 Userform in der 1 Form ermittle ich mittels Combobox einen Wert den ich mir in der Userform 2 mittels Textbox anzeigen lasse. Nun soll aber der Wert, der...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden