ich habe mir eine Datenbank, bestehend aus den Spalten PLZ, Ort, Straße und Personen-Nr. erstellt mit einem eigenen Suchen-Button.
Dieser hat auch auf der kleinen Ebene (ca. 1000 Zeilen) gut seinen Zweck erfüllt. Nun hat sich diese Datenbank aber auf 21.000 Zeilen erhöht.
Jetzt habe ich zwei Probleme:
1. Das Suchen dauert entschieden zu lange, und
2. suche ich nach einer Straße, brauche ich zu lange um den passenden Ort zu finden.
Die in Excel integrierte Funktion "Suchen" läuft schneller.
Meine Frage:
1. Als einfachste Lösung wäre vielleicht die in Excel integrierte Funktion "Suchen" auf meinen eigenen Button legen zu können? Aber wie? Hier bleibt aber mein Problem Nr. 2.
2. Vielleicht suchen lassen nach Abfrage in Orte und die Anzeige wie Autofilter gestalten, bzw. und Suchen nach Straße und die jeweiligen Orte sortiert alphabetisch, anzeigen lassen, ebenfalls nach dem Muster Autofilter.
3. Oder hätte jemand noch eine bessere Idee?
Dies ist mein vorhandener Code fürs "Suchen"
Sub Auswahl()
Dim rng As Range
Dim sBegriff As String, sAdress As String, sFrage As String
sBegriff = InputBox( _
prompt:="Bitte Suchbegriff eingeben:", _
Default:="Hallo")
If sBegriff = "" Then Exit Sub
Set rng = Cells.Find( _
What:=sBegriff, _
Lookat:=xlWhole, _
LookIn:=xlValues, _
MatchCase:=False, _
After:=Range("IV65536"))
If rng Is Nothing Then
Beep
MsgBox "Suchbegriff nicht gefunden!", , _
Application.UserName
Exit Sub
End If
sAdress = rng.Address
rng.Select
' Application.Goto rng, True
sFrage = MsgBox("Fundstelle:" & Space(25) & vbLf & vbLf & _
vbTab & rng.Address(False, False) & vbLf & vbLf & _
"Weitersuchen?", vbYesNo, "Fundstelle")
If sFrage = vbNo Then
Exit Sub
End If
Do
Set rng = Cells.FindNext(After:=rng)
If rng.Address = sAdress Then Exit Sub
rng.Select
' Application.Goto rng, True
sFrage = MsgBox("Fundstelle:" & Space(25) & vbLf & vbLf & _
vbTab & rng.Address(False, False) & vbLf & vbLf & _
"Weitersuchen?", vbYesNo, "Fundstelle")
If sFrage = vbNo Then
Exit Sub
End If
Loop
End Sub
Es wäre schön, wenn mir jemand helfen könnte. Danke schon mal im voraus.
Gruß Korl