Office: (Office 2010) Formular Filtern nach Suchbegriffen

Helfe beim Thema Formular Filtern nach Suchbegriffen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Ich habe mal wieder ein problem. Ich habe ein Formular welches als Datensatzherkunft eine Abfrage hat. Die Abfrage gibt mir verschiedene Einträge... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Horst14, 29. Oktober 2019.

  1. Formular Filtern nach Suchbegriffen


    Ich habe mal wieder ein problem.

    Ich habe ein Formular welches als Datensatzherkunft eine Abfrage hat.
    Die Abfrage gibt mir verschiedene Einträge wieder.
    Unter anderem die Werte: trans_datum, trans_art, und coin_name Das habe ich sichergestellt.

    Auf meinem Formular gibt es 2 textfelder namens trans_von und trans_bis.
    Desweiteren gibt es 2 Kombinationsfelder wo die Datensatzherkunft eine Select abfrage ist. (die im Kombi feld enthaltenen Daten kommen aus einer Tabelle) die Felder heißen cbo_coin und cbo_trans_art.

    Daneben befindet sich ein Such Button der folgendes im Klick Ereignis stehen hat:
    Code:
    Nach dem Datum filtert er mir die anzeige jedoch nciht nach coin_name und trans_art.
    Ich habe statt From.Filter auch Me versucht da ich ja direkt auf dem Hauptformular bin aber das geht nicht, dann gibt er nichts aus.
    Nachdem was ich so gelesen habe sollte es aber funktionieren.

    Ich könnte auch in der Abfrage auf die Felder zurückgreifen, aber das möchte ich nicht, damit ich Flexibel bin. Sonst müsste ich bei coin_name und_trans_art immer etwas eingeben.

    Kann mir jemand sagen was ich falsch mache? Ich finde den Fehler einfach nicht :-(

    Fehlermeldung: Laufzeitfehler 424 Objekt erforderlich

    :)
     
    Horst14, 29. Oktober 2019
    #1
  2. evtl. ein Flüchtigkeitsfehler?...From statt Form
    probier mal
    Code:
     
  3. Tippfehler im Code: statt From muss es Form heißen.
    Zeile 5 im If-Block.
     
  4. Formular Filtern nach Suchbegriffen

    Danke... der Tippfehler ist mir nicht aufgefallen... aber daran lag es nicht.
    Ich habe jetzt folgendes stehen:
    Code:
    Und jetzt funktioniert nicht mal die Datumssuche :-) Ich setzte den Fiter zwischen 2.10. und 5.10. und er zeigt mir beiträge vom September :-D

    Aber jetzt gleibt die Fehlermeldung weg.
     
    Horst14, 31. Oktober 2019
    #4
  5. schau mal genauer #2 an.
     
  6. Oje wo ist mein Kopf ja sorry habe jetzt gesehen das nicht nur das From bemengelt wurde.

    Ich habe es jetzt so geschrieben:
    Code:
    Aber sobald ich jetzt in den Kombinationsfeldern etwas eintrage zeigt er mir nichts mehr an. Ich habe eine Beispieldatenbank angehangen.
     
    Horst14, 31. Oktober 2019
    #6
  7. Code:
    Das ist höchst problematisch. Form ist zwar ein Accessobjekt, aber so kommst Du nie auf ein bestimmtes Formular, auch nicht auf das aktuelle.
    Richtig wäre die Verwendung von Me - das verweist auf das aktuelle Formular.

    Wenn "nichts" ausgegeben wird, erfüllt kein Datensatz die verwendeten Kriterien. Dabei sollte man auch berücksichtigen, dass "leere" Felder i.d.R. einen NULL-Inhalt haben. NULL ist das Undefinierte, Unbekannte. Damit kann man nicht direkt vergleichen, sondern man kann nur diesen Zustand extra abfragen oder behandeln.
     
  8. Formular Filtern nach Suchbegriffen

    Hi ebs 17, mit Me habe ich es auch versucht aber ohne erfolg. Ich habe auch in beiden Kombi feldern etwas eingegeben, damit da kein 0 wert ist aber es wird mir nichts angezeigt. Eigentlich ist die suche uach so gedacht, dass er wenn ich z.b keine Transaktionsart angebe er mir alle anzeigt.

    Aber selbst wenn ich über all etwas eingebe macht er nichts :-(
     
    Horst14, 31. Oktober 2019
    #8
  9. Wie gesagt: Suchen/Filtern kann man immer. Das Finden ist etwas rarer. Das zu Findende muss auch vorhanden sein.

    Kriterium soll alle Datensätze bringen

    Tipp so nebenbei: Wenn Du die FAQ von donkarl auswendig lernst, bist du für sehr viele Fälle gewappnet.
     
  10. Hallo Horst14,

    ich weiß ja nicht., wie Du Deinen Code testest, aber ich habe die Filterbedingung erstmal in eine String-Variable geschrieben:
    strFilter = "trans_datum Between " & strVon & " And " & strBis
    strFilter = strFilter & " AND coin_name LIKE '*" & Me.cbo_coin & "*'"
    strFilter = strFilter & " AND trans_art LIKE '*" & Me.cbo_trans_art & "*'"
    Debug.Print strFilter
    Ergebnis:
    trans_datum Between #2019-10-02# And #2019-10-05# AND coin_name LIKE '*1*' AND trans_art LIKE '*2*'
    Me.cbo_coin & Me.cbo_trans_art ziehen nicht die sichtbaren Werte der Comboboxen, deshalb so:
    strFilter = "trans_datum Between " & strVon & " And " & strBis
    strFilter = strFilter & " AND coin_name LIKE '*" & Me.cbo_coin.Column(1) & "*'"
    strFilter = strFilter & " AND trans_art LIKE '*" & Me.cbo_trans_art.Column(1) & "*'"
    Debug.Print strFilter
    Ergebnis:
    trans_datum Between #2019-10-02# And #2019-10-05# AND coin_name LIKE '*Bitcoin*' AND trans_art LIKE '*Auszahlung*'

    Und dann:
    With Me
    .Filter = strFilter
    .FilterOn = True
    End With

    Gruß von Luschi
    aus klein-Paris
     
  11. Danke für eure Antworten und eure Geduld :-).

    @Luschi
    Ich habe es nicht mit Strings getestet sondern mit eingaben und gemerkt, dass es nicht funktioniert.
    Code:
    Warum ziehen Sie die werte nicht was habe ich falsch gemacht?
    So wie du es jetzt geschrieben hast funktioniert es wunderbar danke dafür aber für mein verständnis, was habe ich falsch gemacht?

    Dann werde ich jetzt mal versuchen, die Anzeige in einen Bericht zu verpacken, so dass ich das Filtererrgebnis ausdrucken kann :-).
     
  12. Hallo Horst14,

    diese beiden Combi-Felder sind in den Eingenschaften so eingestellt:
    Spaltenbreite: 0cm;2,544cm
    Gebundene Spalte : 1
    Diese gebundene Spalte hat aber die Breite von 0 cm und wird somit nicht angezeigt.
    Und Me.cbo_coin bzw. Me.cbo_trans_art gibt die Standardeigenschaft 'Value' zurück, also den Wert der gebundenen Spalte und entspricht aber auch
    Me.cbo_coin.Column(0) sowie Me.cbo_trans_art.Column(0).
    Deshalb bei SQL-/Filter-Strings erst eine Variable füllen, um zu sehen, was dann an das Recordset bzw. den Filter geschickt wird.
    Dazu gehöhrt auch, daß man
    - mit Haltepunkte /Brakepoints (F9-Taste) beim Testen arbeitet
    - mit F8-Taste Zeile für Zeile weiter schaltet
    - oder mit F5-Taste den normalen Programmablauf fortsetzt
    - im Überwachungsfenster einzelnen Variablen speziell kontrolliert usw.

    Gruß von Luschi
    aus klein-Paris
     
  13. Formular Filtern nach Suchbegriffen

    Buildcriteria ist eine hilfreiche Funktion:
    Code:
    Im übrigen würde ich über die ID'S also die gebundenen PK's der Kombis filtern und nicht über den Namen.
     
    fredfred, 1. November 2019
    #13
  14. Halloo fredfred,

    was nützt 'BuildCriteria' wenn die übergebene Logik falsch ist; bei dir kommt heraus: trans_datum#10/2/2019#
    Gesucht sind aber alle DS, die zwischen (between) diesen beiden Datumsangaben liegen (einschließlich der unteren und oberen Grenze)!

    Gruß von Luschi
    aus klein-Paris
     
  15. Wer sagt, dass diese "Logik" nicht realisierbar ist ?
    Der Vorteil von BuildCriteria liegt darin, dass sich die Funktion um die korrekte Formatierung der Datentypen kümmert.


    schon mal was von >= oder
     
    fredfred, 1. November 2019
    #15
Thema:

Formular Filtern nach Suchbegriffen

Die Seite wird geladen...
  1. Formular Filtern nach Suchbegriffen - Similar Threads - Formular Filtern Suchbegriffen

  2. Summen in Formular nach Filter #Fehler

    in Microsoft Access Hilfe
    Summen in Formular nach Filter #Fehler: Hallo, hat jemand eine Idee, woran es liegen könnte, dass Summenfelder in einem Formular auf Fehler laufen, sobald die Datensätze gefiltert werden? Solange ich mittels Datensatznavigation zum...
  3. Filter Datum im Formular

    in Microsoft Access Hilfe
    Filter Datum im Formular: Hallo zusammen, ich hab mal eine Frage. Ich hab ein Formular was auf einer Abfrage bzw. Tabelle mit zwei Datumsspalten Gültigkeit_von und Gültigkeit_bis basiert. Ich hab sonst immer einen...
  4. NACH Filter im Formular Min-Wert mit VBA

    in Microsoft Access Hilfe
    NACH Filter im Formular Min-Wert mit VBA: Hallo Zusammen, ich habe ein Formular basierend auf Tabelle im Formular möchte ich mit VBA den Prozentwert einer Spalte angeben. hierzu benötige ich den Min-Wert dieser Spalte soweit bin ich...
  5. Filter für Formular

    in Microsoft Access Hilfe
    Filter für Formular: Hallo, in einem Formular möchte ich nur Daten eines Jahres anzeigen. Das Jahr soll man in einem Textfeld auswählen können. Dazu möchte ich bei der Aktualisierung des Textfeldes den Filter an die...
  6. Filtern in Formular über mehrere Tabellen/Abfragen

    in Microsoft Access Hilfe
    Filtern in Formular über mehrere Tabellen/Abfragen: Hallo zusammen, folgende Problemstellung: Ich habe ca. 15 Tabellen (aus unterschiedlichen Jahren) mit den gleichen Feldernamen. Ich möchte ein HF mit UFO erstellen, wo ich über HF in UFO nach...
  7. Verbundene Formulare nach Filtern nicht mehr synchron

    in Microsoft Access Hilfe
    Verbundene Formulare nach Filtern nicht mehr synchron: Guten Tag, ich habe ein Formular mit zwei Unterformularen drin, welche auf die gleiche Tabelle verbunden sind: einmal in Datenblatt-Ansicht als Übersicht und zur einfachen Selektion eines...
  8. Formular öffnen mit Filter

    in Microsoft Access Hilfe
    Formular öffnen mit Filter: Hallo, ich möchte ein Formular öffnen, und direkt einen Filter setzen, dazu habe ich im Netz gefunden DoCmd.OpenForm "Employees", , ,"LastName = 'King'" diesen Code habe ich in meiner DB wie...
  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