4.4k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo und Hilfe :)

Habe folgende(s) Problem(e):Ich würde zu meiner Listbox1 gerne ein Suchfeld einfügen. Soll heißen:

-Wenn jemand einen Buchstaben oder Kombination aus Buchstaben eingibt, soll eine Auswahl in der Listbox angezeigt werden
(hintergrund ist eine Kundentabelle. In der Listbox1 sollen Nachnamen angezeigt werden).
Ich habe Google etliche Tage bemüht, finde aber einfach nichts wie ich das machen könnte :(

Zudem habe ich noch ein Problem nr. 2: Wenn ich auf "neuen Eintrag gehe" setzt er mir in
Zeile 188 zwar einen "neuen Eintrag" aber ich kann dort nichts speichern und zu allem
Überfluss sind in den darauf folgenden Spalten (188;B,188;C...usw) schon Daten hinterlegt-> quasi hat
er einen neuen Eintrag in einer falschen Spalte erstellt (aber warum?)
Habe jetzt ein wenig rumprobiert....irgendwie stoppt alles bei 188...
obwohl er eigentlich in die letzte Spalte gehen sollte

Wäre überaus dankbar für Hilfe.
Hier mein wirrer Code



LG Susi

23 Antworten

0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo,

noch ein Nachtrag:
ThisWorkbook.Worksheets("Tabelle1").Cells(i, 1).Cells(Rows.Count, 1).End(xlUp).Row
Hier ist .Cells(i, 1) zuviel.

Gruß

M.O.
0 Punkte
Beantwortet von m-o Profi (22.9k Punkte)
Hallo Susanne,

noch mal ich :-):

Eine Alternative, bei der auch der Vorname in der Listbox angezeigt wird:

Private Sub CommandButton100_Click()
Dim strSuche As String
Dim lngLang As Long
Dim i As Long
Dim strName As String


strSuche = TextBox100.Value
lngLang = Len(strSuche)

'Inhalt der Listbox1 löschen
UserForm1.ListBox1.Clear

'Nur Daten aus Spalte A in Listbox eintragen, deren Anfang dem Suchbegriff entspricht; durch LCase wird Groß-/Kleinschreibung ignoriert
For i = 2 To ThisWorkbook.Worksheets("Vorlage Kontakt-Liste").Cells(Rows.Count, 1).End(xlUp).Row
If Left(LCase(Worksheets("Vorlage Kontakt-Liste").Cells(i, 1)), lngLang) = LCase(strSuche) Or Left(LCase(Worksheets("Vorlage Kontakt-Liste").Cells(i, 2)), lngLang) = LCase(strSuche) Then UserForm1.ListBox1.AddItem Worksheets("Vorlage Kontakt-Liste").Cells(i, 1) & ", " & Worksheets("Vorlage Kontakt-Liste").Cells(i, 2)
Next i

End Sub


Gruß

M.O.
0 Punkte
Beantwortet von
Danke, Danke M.O

Funktioniert nun alles wie gewollt :)

Vielen vielen Dank nochmals
...