Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1172to1176
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Suchfunktion VBA -

Suchfunktion VBA -
Alexander
Hallo!
Habe ein Problem mit meiner Excelauswertung und hoffe, dass mir ein Profi weiterhelfen kann:
Ich habe ein Eingabesheet, mit dem die Daten in der Tabelle erfasst werden (Verkäufe eingeben) . Weiters habe ich eine Suchfunktion mit der ich einen Datensatz (= Wirschaftseinheit) suchen kann.
Nun möchte ich, dass nicht nur die Wirtschaftseinheit gesucht wird, sondern auch z.b. die Postzeitzahl.
Vorranging soll bei der neuen Auswertung die Postleitzahl, und dann erst die Wirtschaftseinheit gesucht werden.
Weiters kann es sein, dass es mehrere gleiche Plz gibt. Nun soll mittels des Buttons WEITER, der nächste gefilterte Datensatz aufscheinen.
d.h. (Auszug aus meiner Tabelle) z.b. Suche nach PLZ 1070 = WE 1213 - Button WEITER = PLZ 1070 WE 1415. Bei Button SUCHEN soll dann neuerlich die Suchfunktion gestartet werden.
Die Textierungen in den Eingabemasken kann ich selber anpassen.
https://www.herber.de/bbs/user/71259.xls
Bitte um Hilfe
Danke im Voraus!

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Suchfunktion VBA -
26.08.2010 23:51:49
fcs
Hallo Alexander,
nachfolgend die entsprechenden Makros.
Gruß
Franz
'Code in einem allgemeinen Modul - am besten im Modul1 ergänzen
Sub PLZ_Suchen()
If Ausgabefrm.Visible = True Then Unload Ausgabefrm
If Suche_PLZ(lStart:=5) = True Then
Ausgabefrm.Show
End If
piZeile = 0
End Sub
Private Function Suche_PLZ(lStart As Long) As Boolean
Dim lstrPLZ As String
lstrPLZ = InputBox("Geben Sie bitte die gesuchte PLZ ein.", _
"Suche einer PLZ")
piZeile = lStart
'PLZ in Spalte F suchen
Do Until Sheets("Verkäufe Eingabe").Range("F" & piZeile).Value = ""
If LCase(Sheets("Verkäufe Eingabe").Range("F" & piZeile).Value) = _
LCase(lstrPLZ) Then
Suche_PLZ = True
Exit Function
End If
piZeile = piZeile + 1
Loop
MsgBox "Es wurde keine Übereinstimmung gefunden"
Suche_PLZ = False
End Function
'Code im Userform "Ausgabefrm"
Private Sub CommandButton6_Click()
'Weiter-Button - nächste WE zur PLZ anzeigen
Dim lstrPLZ As String
lstrPLZ = TextBox6.Value 'PLZ aus Userform einlesen
piZeile = piZeile + 1
'PLZ in Spalte F suchen
Do Until Sheets("Verkäufe Eingabe").Range("F" & piZeile).Value = ""
If LCase(Sheets("Verkäufe Eingabe").Range("F" & piZeile).Value) = _
LCase(lstrPLZ) Then
Call UserForm_Activate 'Daten zur Zeile einlesen
Exit Sub
End If
piZeile = piZeile + 1
Loop
MsgBox "Es wurde keine weitere WE gefunden", _
vbOKOnly + vbInformation, "Nächste WE zur PLZ suchen"
End Sub
Private Sub CommandButton1_Click()
'Suchen-Button
'Suchen neue PLZ
Call PLZ_Suchen
'Suchen WE
'Call AdresseSuchen
End Sub

Anzeige
AW: Suchfunktion VBA -
27.08.2010 09:11:15
Alexander
Hallo Franz!
Danke für die Nachricht und den Lösungsvorschlag. Leider hat es nicht funktioniert.
Um unklarheiten zu beseitigen nochmals mein Wunsch:
Es sollen in der Suchfunktion nach Plz ODER Wirtschaftseinheiten gesucht werden.
Falls es mehrere Plz oder We in der Tabelle geben sollte, sollen diese mit dem Button "weiter" angezeigt und wie bereits momentan in der Programmierung vorhanden, änderbar und speicherbar sein.
Hoffe ich habe alles verständlich erklärt und bitte um Hilfe. Ist es vielleicht möglich die Programmierung gleich in meiner Tabellle einzufügen ? Danke im Voraus
mfg
A. Baumgartner
Anzeige
AW: Suchfunktion VBA -
28.08.2010 02:03:33
fcs
Hallo Alexander,
ich hoffe das passt jetzt. Die Suchwerte PLZ oder WE.Nr. können jetzt direkt im Userform in 2 Comboboxen eingegeben/Ausgewählt werden.
Wie du die "Weiter"-Funktion genau haben willst hab ich immer noch nicht ganz verstanden. Deshalb jetzt 2 Schaltflächen.
Auf meinem Notebook ist das von dir definierte Userform zu groß, die unterste Zeile mit Feldern kann ich nicht einsehen. Ich die Textbox-zeilen mit etwas weniger Abstand versehen, so dass alles ohne Scrollen angezeigt werden kann.
Einige Funktionen wie "Werte aus Tabelle einlesen", "Textboxen leeren" werden mehrfach benötigt. Ich hab sie deshalb als eigene kleine Subs des Userformmoduls eingefügt.
Gruß
Franz
https://www.herber.de/bbs/user/71292.xls
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige