Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Abfragen über Formular ausführen

Empfohlene Antworten

Veröffentlicht

Hallo,

ich komm irgendwie nicht weiter.

Bis jetzt schaut es so aus, dass ich ein Formular habe, in dem ich zum Beispiel die 3 Textfelder: Gegenstand, Typ und Ausführung habe. Über einen button kann ich eine Abfrage öffnen. Die Abfrage soll nun nach Datensätzen suchen, die mit in den 3 Textfeldern angegebenen Werte übereinstimmen. Bis jetzt klappt die Abfrage aber nur wenn ich in jedes Textfeld einen Wert eingebe.

Es soll aber so sein, dass wenn zum Beispiel eines des 3Textfelder leer ist, dann die Abfrage nach den Datensätzen sucht, die mit den anderen beiden Textfeldern übereinstimmt und das dritte Kriterium nicht berücksichtigt.

Kann mir bei meinem Problem vielleicht jemand helfen??

Schon mal Danke.

LG

Tobias

meine glaskugel meinte, du verwendest MS Access :D

könnte aber auch oracle forms sein, oder aber ...

*rat* *rat* *rat*

s'Amstel

oh sorry,

ich verwende access 07

meine glaskugel meinte, du verwendest MS Access :D

könnte aber auch oracle forms sein, oder aber ...

*rat* *rat* *rat*

s'Amstel

Hej du sag mal lieber die Zahlen fürs Mittwochslotto voraus :D Du hattest recht.

Apropos, die Skriptsprache, mit der die DB-abfrage erledigt ist was? PHP, ASP, Java oder was?

oh sorry,

ich verwende access 07

Schreibe dir eine Ereignisprozedur "bei Änderung" der Suchfelder, die eine weitere Prozedur aufruft (immer die gleiche), die dir die Bedingung (wie SQL-where, nur ohne where) zusammensetzt.

Dann nimmst du diese als Filter und schaltest den Filter ein.


Private Sub DeinTextfeld1_AfterUpdate()

    Call Filter_setzen

End Sub


Private Sub DeinTextfeld2_AfterUpdate()

    Call Filter_setzen

End Sub


Private Sub DeinTextfeld3_AfterUpdate()

    Call Filter_setzen

End Sub


Private Sub Filter_setzen()

    Dim Filterbedingung As String

    If Not IsNull( Me!DeinTextfeld1 ) Then

        If Filterbedingung <> "" Then

            Filterbedingung = Filterbedingung & " AND "

        End If

        Filterbedingung = Filterbedingung & "Textfeld1 = " _

                & chr(34) &  Me!DeinTextfeld1 & chr(34) 

    End If

    If Not IsNull( Me!DeinTextfeld2 ) Then

        If Filterbedingung <> "" Then

            Filterbedingung = Filterbedingung & " AND "

        End If

        Filterbedingung = Filterbedingung & "Textfeld2 = " _

                & chr(34) &  Me!DeinTextfeld2 & chr(34) 

    End If

    If Not IsNull( Me!DeinTextfeld3 ) Then

        If Filterbedingung <> "" Then

            Filterbedingung = Filterbedingung & " AND "

        End If

        Filterbedingung = Filterbedingung & "Textfeld3 = " _

                & chr(34) &  Me!DeinTextfeld3 & chr(34) 

    End If

    Me.Filter = Filterbedingung

    Me.FilterOn = true

End Sub

Einfach mal so aus der hohlen Hand, aber das Prinzip stimmt.

Hollaröhdulljöh

Reinhold

Hallo Reinhold,

Danke für den Filter. Er fuktioniert auch, aber irgendwie kann ich den Filter nicht an ein anderes Formular bzw Bericht weitergeben.

Über einen Button soll ein weiteres Formular geöffent werden. Folgendes hab ich da geschrieben:

DoCmd.OpenForm "stammdaten", acNormal, Me.Filter

Es kommt jedoch folgender Laufzeitfehler 3011:

Das Mocrosoft Office Access Datenbankmodul konnte das Objekt 'Gegenstand="XY" AND Typ="YZ"' nicht finden. Stellen Sie sicher, dass das Objekt vorhanden und dass die Namens- und Pfadangaben richtig eingegeben wurden.

Das komische ist, dass wenn ich ein geteiltes Formular hab, dann filtert er mir die Datensätze in der Datenblattansicht. Wenn ich jedoch das gleiche Formular über den button öffnen möchte geht es schon nicht mehr.

PS: Das Textfeld im Sucheformular hat den gleichen Namen wie im zweiten.

Weiß vielleicht dafür jemand eine Lösung.

Bitte um Hilfe.

Schonmal Danke

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.