Office: Suchfunktion für Listbox in Textbox

Helfe beim Thema Suchfunktion für Listbox in Textbox in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo an alle hier im Forum, ich bastel mal wieder ein wenig rum. Ich habe ein 2 spaltige Listbox. In der 1. Spalte stehen Zahlen von einstellig bis... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Nanu, 27. Oktober 2023.

  1. Nanu User

    Suchfunktion für Listbox in Textbox


    Hallo an alle hier im Forum,
    ich bastel mal wieder ein wenig rum. Ich habe ein 2 spaltige Listbox. In der 1. Spalte stehen Zahlen von einstellig bis sechsstellig und in der 2. Spalte Namen. Im Netz habe ich folgendes Makro zum Suchen in beiden Spalten nach Eintrag in Textbox 4 gefunden. Das habe ich mir soweit ich konnte angepasst.

    Private Sub TextBox4_Change()
    Dim Zeile As Long
    Me.ListBox1.Clear
    'Schleife über alle Zeilen der Tabelle
    For Zeile = 2 To Nummer.Cells(Rows.Count, 2).End(xlUp).Row
    If InStr(1, LCase(Nummer.Cells(Zeile, 1).Value), LCase(Me.TextBox4.Value)) <> 0 Or _
    InStr(1, LCase(Nummer.Cells(Zeile, 2).Value), LCase(Me.TextBox4.Value)) <> 0 Then
    Me.ListBox1.AddItem Nummer.Cells(Zeile, 1)
    Me.ListBox1.List(Me.ListBox1.ListCount - 1, 1) = Nummer.Cells(Zeile, 2)
    End If
    Next Zeile
    End Sub

    Das funktioniert auch einwandfrei auf der Textseite (Spalte2). Nur auf der Zahlenseite (Spalte1) nicht zu 100%. Wenn ich nur eine 1 eingebe werden mir auch weiterhin die Zahlen 3, 4, 5 usw angezeigt. Gebe ich 12 ein wird mir weiterhin 169, 170, 171 usw. angezeigt. Ab der 3 Stelle passt es dann. Was muss ich ändern?
    Vielen Dank wie immer an alle fleißigen Helfer.
    Nanu
     
  2. Hajo_Zi
    Hajo_Zi Erfahrener User
    ich würde vermutwn in dem Code vwird nichts in einer Liszbox gesucht? Es werden nur Wertze eingetrage, Eine Eingabe sehe ich auch nicht?

    nur wenige schauen auf Deinen Rechner und sehen die Datei.
    Ich möchte gerne den Fehler im Original sehen.

    Ich baue keine Datei nach. Die Zeit hat schon jemand investiert.

    Ein Nachbau sieht meist anders aus als das Original. <B>Darum sollte das Original verlinkt werden.</b>

    Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
    Hinweis - Anonymisierung und Pseudonymisierung von Beispielmappen - MS-Office-Forum
    änderrn.
    Der Name einer hochgeladenen Mappe wird im Beitrag automatisch angezeigt, sodass es bei Verwendung von aussagekräftigen Namen leichter fällt, sie später im Ablageordner wiederzufinden und sie gedanklich einem bestimmten Thema zuzuordnen. Namen wie Muster*, Test*, Mappe*, Beispiel*, Fehler*, Kalender* usw. sind so allgemein, dass eine Zuordnung zu einem Thema unmöglich gemacht wird.
    Es sollte ein aussagekräftiger Name sein.

    Benutze hier im Forum die Funktion zum hochladen. Falls Du die nicht benutzen möchtest beachte, von unsicheren Servern wie z.B. www.file-upload.net lade ich keine Datei runter. (lt. Einschätzung meines Virenprogramms)3

    Bilder lade ich mir nicht runter, da Excel damit nichts anfangen kann.

    Bilder statt Datei | Excel ist sexy!

    Hochgeladene Bilder können zwar als solche in Excel importiert werden, sind jedoch bei der Lösung von Problemen nicht sehr hilfreich, da man die eigentlichen Daten nicht ohne große und zeitraubende Umwege direkt in die Tabelle übertragen kann.

    Das ist nur meine Meinung zu dem Thema.

    Suchfunktion für Listbox in Textbox GrußformelSuchfunktion für Listbox in Textbox Homepage
     
    Hajo_Zi, 27. Oktober 2023
    #2
  3. OilMax hat Ahnung
    Hallo Nanu,

    du musst bei Inhalten von Textboxen, wenn keine Formatierung vorgenommen wird wissen, dass Text gesucht wird.
    Code:
    If InStr(1, LCase(Nummer.Cells(Zeile, 1).Value), LCase(Cdbl(TextBox4))) > 0 Then ....
    Die Rückgabe der Funktion Instr() kann nicht kleiner wie 0 sein, da bei 0 der Wert nicht im zu durchsuchenden String (Zellinhalt) enthalten ist.
    Also bei Treffer - Wert >0 würde im zu durchsuchenden String ab Stelle beispielhaft 4 der Wert der Textbox gefunden werden.
    Eine Anmerkung zu .AddItem:
    Das ist leider die lahmste Methode um eine Listbox zu füllen.
    Zum Lernen erst mal gut geeignet, aber später sollte man einfach die Treffer in einem Array sammeln und das Ergebnis in einen Rutsch in die Listbox mit .List laden. Ein anderer Weg ist das Filtern in der Tabelle und die gefilterte Tabelle in die Listbox ebenfalls mit .List laden.

    Gruß Uwe
     
  4. Klaus-Dieter Erfahrener User

    Suchfunktion für Listbox in Textbox

    Hallo Nanu,

    wenn du eine Beispieldatei eingestellt hättest, wäre es leichter möglich, Lösungsvorschläge zu unterbreiten.
     
    Klaus-Dieter, 27. Oktober 2023
    #4
  5. OilMax hat Ahnung
    @ Klaus-Dieter,

    er wird sich erst ab späten Nachmittag melden können, da Standort Süd Amerika

    Gruß Uwe
     
  6. Nanu User
    Hallo ins Forum, vielen Danke schonmal für das Interesse und die Informationen. Ich werde versuchen eine Beispielmappe zu erstellen wo mein Problem ersichtlich wird. Mit dem Ansatz von Uwe (OilMax) komme ich aber auch schon ein Stück weiter. Und er hat Recht mit dem Standort (Mittelamerika), also seit bitte nicht böse wenn es etwas dauert mit der Antwort.
    Nanu
     
  7. Nanu User
    Hallo nochmal ins Forum. Falls sich also jemand die Mühe und Arbeit machen möchte versuche ich mal die gewünschte Datei hochzuladen.
    Vielen Dank an alle die helfen
    Nanu
     
  8. OilMax hat Ahnung

    Suchfunktion für Listbox in Textbox

    Hallo Nanu,
    da du nicht in Spalte A gezielt suchst, tauchen im Ergebnis immer alle Treffer aus beiden Spalten auf.
    Da in den meisten Fällen dies zutrifft, braucht es eine andere Herangehensweise.
    Diese ist etwas aufwendiger und nicht mehr so leicht zu verstehen.
    Ich habe mal eine völlig andere Idee eingebaut, welche ich mal in einen anderen Forum hochgeladen/geantwortet hatte.
    Man kann auch einfach den Filter der Strg./T Tabelle spaltenabhängig steuern.
    Es braucht nur wenig Code, welcher dann auch leicht überschaubar ist.
    Teste mal ob es so funktional auchreichend ist.

    Gruß Uwe
     
    1 Person gefällt das.
  9. OilMax hat Ahnung
    anbei in Userform2 der Filter mit Vorauswahl. Dieser ist auf Basis der Strg./T Tabelle aufgebaut.

    Gruß Uwe
     
    1 Person gefällt das.
  10. Nanu User
    Hallo Uwe,
    vielen Dank für die super Arbeit. Ich habe es schon in mein Projekt eingefügt und es arbeitet hervorragend. Das ist schon ein ganz anderes Niveau. Hut ab. Eine Frage zum Code hätte ich noch. Kann man aus der Strg./T Tabelle auch nur bestimmte Spalten in der "Cbo_Suchbereich" zulassen? Da meine Strg./T Tabelle, die ich dafür nutze, wesentlich mehr Spalten hat und ich aber nur nach 2 Spalten filtere. Ich habe es jetzt ganz einfach über eine Hilfstabelle gelöst. Aber wie gesagt, das nur wenn es kein großer Aufwand ist. Alles läuft PERFEKT.
    Vielen Dank nochmals
    Nanu
     
  11. Nanu User
    Ach ja ich habe natürlich deine UserForm2 eingebautSuchfunktion für Listbox in Textbox *:)*Suchfunktion für Listbox in Textbox *:)*
     
  12. OilMax hat Ahnung
    Hallo Nanu,

    Ja das ist problemlos möglich. Macht aber nur Sinn, wenn es beim Suchen bleiben soll.
    Dazu braucht es ein paar Infos.
    - Wie viele Spalten hat deine Strg./T Tabelle?
    - Welche Spalten sollen in die Listbox?
    Mit Application.index etc. ist das kein Problem.

    Gruß Uwe
     
  13. Nanu User

    Suchfunktion für Listbox in Textbox

    Hallo Uwe,
    vielen Dank das du dir Zeit nimmst. Meine Strg./T Tabelle hat 12 Spalten (A:L). In Spalte 1 der Listbox wäre die Spalte E der Tabelle (ein Mix aus Text und Zahlen z.B. "MAS00101008" ) und in Spalte 2 der Listbox wäre die Bezeichnung aus Spalte B der Tabelle. Aber wie beschrieben nur wenn es dich nicht zuviel Aufwand kostet. Mit meiner Hilfstabelle kann ich auch gut leben.
    Vielen Dank nochmal
    Nanu
    Und dank dir habe ich auf jeden Fall viel gelernt und kann andere Sachen die ich mir gebaut habe viel besser und einfacher umsetzen.
     
  14. OilMax hat Ahnung
    Hallo Nanu,

    ändere diese Prozesdur so:
    Code:
    Private Sub ListboxLaden()
        Dim arr()
        arr = Inventario.ListObjects(1).DataBodyRange.Value
        arr = Application.Index(arr, Evaluate("row(1:" & UBound(arr, 1) & ")"), Array(5, 2))
        ListBox1.List = arr
        Lbl_Einträge.Caption = Inventario.ListObjects(1).DataBodyRange.Rows.Count & "/" & Inventario.ListObjects(1).DataBodyRange.Rows.Count & " Einträge"
    End Sub
    Falls sich die Tabelle mal ändert, brauchst du nur im Array(...) die Nummern der Spalten anpassen.
    Gruß Uwe
     
    1 Person gefällt das.
  15. Nanu User
    Hallo Uwe habe es abgeändert aber in der "Cbo_Suchbereich" werden mir immer noch alle Spalten Überschriften angezeigt. Und nicht nur die von Spalte 2 und 5. Ich habe aber, glaube ich zumindest, alles richtig eingefügt. Aber wie beschrieben ich bin schon mehr als zufrieden. Dir ein schönes Wochenende und nochmals vielen Dank. Ich bin jetzt mit deinem Code gut ausgelastet dieses WE.
    Nanu
     
Thema:

Suchfunktion für Listbox in Textbox

Die Seite wird geladen...
  1. Suchfunktion für Listbox in Textbox - Similar Threads - Suchfunktion Listbox Textbox

  2. Suchfunktion beschleunigen

    in Microsoft Word Hilfe
    Suchfunktion beschleunigen: Hallo, ich habe ein sehr großes Word-Dokument in dem ich sehr oft suche. Die Suche starte ich i.d.R. vom Anfang des Dokuments weil ich dann sehr häufig eine Fundstelle direkt im Inhaltsverzeichnis...
  3. Suchfunktion in Zeile einbinden ?

    in Microsoft Excel Hilfe
    Suchfunktion in Zeile einbinden ?: Hallo zusammen, leider finde ich irgendwie keine Lösung zu meinem Problem. Glaube aber das es gar nicht so schwer sein dürfte. Ich möchte einfach nur genau das gleiche was die Suchfunktion macht...
  4. Suchfunktion innerhalb der Foren

    in Lob, Kritik und Verbesserungsvorschläge
    Suchfunktion innerhalb der Foren: Hallo and das Office-Hilfe Team, ich bin vor Kurzem auf eure Seite aufmerksam geworden und finde sie sehr gut. Innerhalb der Foren ist es zwar möglich die Fragen und entsprechenden Antworten auf...
  5. Find,Suchfunktion funktioniert nicht bei Excel 2016

    in Microsoft Excel Hilfe
    Find,Suchfunktion funktioniert nicht bei Excel 2016: Hallo zusammen, Ich habe ein Problem. Ich habe eine Suchfunktion: =WENN($K$1="";"";FILTER($A$2:$H$15000;ISTZAHL(SUCHEN($K$1;$A$2:$A$15000)))) Diese Funktioniert im office 365 Excel einwandfrei....
  6. VPA Suchfunktion mit Ausblenden

    in Microsoft Excel Hilfe
    VPA Suchfunktion mit Ausblenden: Hallo zusammen, Ich habe ein Problem und finde nichts passendes. Ich möchte mit einem Suchbutton, den Text eingeben und die tabelle1 (Spalte A15 bis B1000)durchsuchen. Es sollten nur noch die...
  7. Suchfunktion kaputt nach Windows update

    in Microsoft Outlook Hilfe
    Suchfunktion kaputt nach Windows update: Guten Tag Seit dem neusten Windows 11 update erhalte ich keine Suchergebnisse mehr. Die Reparatur von Office 2021 bringt nichts. Die Indexierung neu starten ändert auch nicht's, C:/Microsoft/Daten...
  8. Suchfunktion in Listbox

    in Microsoft Excel Hilfe
    Suchfunktion in Listbox: Hallo zusammen, bin ein Neuling was VBA angeht und habe folgendes Problem. Über Double Click öffnet sich eine neue Userform und die Daten der Zeile füllen Textboxen aus. Das funktioniert alles....
  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