Suchfunktion in acces

Guten Morgen!

Ich mal wieder :smile:
Access 2003
Ich habe jetzt ein Formular erstellt auf dem sich 2 Schaltflächen befinden. Klickt man auf die eine wird man zu einem weiteren Formular geleitet und klickt man auf die andere, soll man zu einer Suchfunktion kommen.
Und da kommt meine Frage :smile:
Man kann doch sicherlich Suchfunktionen in Access erstellen oder?
Also ich habe eine Tabelle aus der ich dann die gesuchten Sachen ausgeben lassen will.
Wie mach ich das nun?Ich hab leider noch nicht mal eine Anfangsidee.
Muss ich dazu wieder ein Formular mit ner Schaltfläche machen???
Die Hilfe gibt auch nix gutes an .
Ich hoffe ihr könnt mir helfen!

Danke schonmal

Hallo und Guten Morgen,

also da musst du schon etwas genauer sagen was du vorhast. Denn „Suchen“ kann so viele Gesichter haben. Willst du nach einem best. Begriff in einer bestimmten Spalte suchen, oder ueber mehrere Spalten oder ueber mehrere Tabellen. Oder vieleicht Suchen mit mehreren Begriffen in mehreren Spalten?

Am einfachsten du erstellst ein Formular mit den entsprechenden Daten und nimmst die Access-Suchfunktion her, ist nicht wirklich flexible aber ist einfach zu handhaben.

Nimm das Formular her und ersatelle dort einen Knopf und gibt im beimKlick folgende 2 Zeilen:

Screen.PreviousControl.SetFocus
DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70

Dann wird der Access-Suchdialog geoeffnet, mit dem letzten Eingabefeld in dem der Cursor vor dem Buttonklick stand.

Tschau
Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hey!

Also ich benutze Access 2003.

Also ich hab mir das so vorgestellt.
Ich habe eine Tabelle mit verschiedenen Datensätzen.
In der Tabelle gibt es eine Kunden_Id, die oft gleich ist.Nun möchte ich zum Beispiel in das Suchenfeld „Haribo“ eingeben und mir werden alle Datensätze zu Haribo angezeigt.

Reicht das?

Hallo,

wenn es sich um das Suchen in einem Formular handel… dann s.o.
bei einer Abfrage/Tabelle kann man die Access-eigene Suche mittels STRG-F hernehmen.

Tschau
Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi Peter!

Also ich soll eine Oberflächer erstellen über die der Nutzer nach Kunden (die in einer Tabelle stehen) suchen kann.
Das heißt er gibt den Namen an und klickt auf Suchen, darunter erscheinen dann die gesuchten Sachen.

Hallo,

also wenn das so ist, meine bewaehrtes Strickmuster fuer solch ein Problem:

Man nehme ein Formular ( ungebunden, ohne Naviagtion etc.)
Man nehme ein Eingabefeld txtSearch ( ungebunden)
Man nehme ein Listenfeld lstOverview ( ungebunden)
Man nehme einen Knopf btnSearch mit Beschriftung suchen und die OnClick-Prozedur.

In dieser Procedur codiert man etwa folgendermassen

=================================================
Dim sqlString as String

sqlString = „Select * From Kundentabelle where KundenName like '*“ & txtSearch „*’ ORDER BY KundenName“
lstOverview.RowSource = sqlString

==================================================

Das Ganze kann man dann noch vervollstaendigen, das man mittels DoppelKlick auf einen Listeneintrag den entsprechenden Datensatz in einem Bearbeitungsformular oeffnet. Oder mehrere Eingabefelder verwendet damit man nach PLZ oder/und Ort etc. suchen/filtern kann.

Tschau
Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Morgen!

Ja cool danke!
Hab das alles gemacht, nur leider zeigt der mir bei dem Skript an : Syntaxfehler uhnd markiert die erste Zeile.
Was könnte das sein?

Hallo,

um das ganze etwas abzukuerzen… Du hast Mail!

Tschau
Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

@ Peter: suchfunktion in acces
Hi Peter,

habe mir deinen Tipp auch angenommen. Musste iHn zwar für mich noch etwas anpassen, aber sonst klappt alles wunderbar! Danke.

Nun allerdings noch 2 Fragen:

  1. Wie kann ich beim Schiliessen des Formulars die Inhalte der Liste wieder löschen?

  2. ich brauche aus der Abfrage nicht nur eine, sondern 2 Spalten, die ich dann auch angezeigt haben will. (ID und Thema.)
    Meine bisherige Abfrage sieht folgendermaßen aus:

Private Sub btnsearch_Click()
Dim sqlString As String

Dim search As String

search = „“"*" & txtsearch & „*“""
sqlString = "Select Thema From tab_Anweisung where Thema like " & search
lstoverview.RowSource = sqlString
End Sub

Wie gesagt, ich bräuchte jetzt noch neben dem Thema die ID (für spätere Abfragen wichtig).

Kann mir jemand da helfen?
Nicht nur Peter ist hiermit angesprochen…

Hi hellfish,

  1. Wie kann ich beim Schiliessen des Formulars die Inhalte der
    Liste wieder löschen?

da das Listenfeld ungebunden ist, „löscht“ sich der Inhalt von alleine, wenn du das Formular schießt.

  1. ich brauche aus der Abfrage nicht nur eine, sondern 2
    Spalten, die ich dann auch angezeigt haben will. (ID und
    Thema.)

Private Sub btnsearch_Click()
Dim sqlString As String

Dim search As String

search = „“"*" & txtsearch & „*“""
sqlString = "Select Thema From tab_Anweisung where Thema
like " & search
lstoverview.RowSource = sqlString
End Sub

Wie gesagt, ich bräuchte jetzt noch neben dem Thema die ID
(für spätere Abfragen wichtig).

Kann mir jemand da helfen?

vielleicht damit:

sqlString = "Select ID,Thema From tab_Anweisung where Thema
like " & search

Grüße aus Essen
Wolfgang

Hi,

habe es schon allein hin bekommen.

Lösung zu 1.: unter den Eigenschaften der Listbox stand noch ein SQL Befehl. Der hat mir immer alle Ergebnisse angezeigt.

zu 2.: sqlString = "Select Thema From tab_Anweisung where Thema like " & search OR Beschreibung like " & search

Damit ging es dann…

Vielen Dank für eure Hilfe…

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

ich habe ein ähnliches prob

und zwar funktioniert meine suche
aber eben nur einmal
dann kommt immer das gleich obwohl ich das suchwort ändere

ich trage das wort in ein textfeld ein und drücke dan auf ein kombifeld
dort zeigt es mir die datensätze an
aber eben immer die gleichen

starte ich das formular neu geht es wieder ( 1 mal )

wenn das einer hinkriegt wäre ich froh