Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: NewDigger1970 am Dezember 13, 2016, 12:01:10

Titel: Abfrage mit mehreren Kriterien u. A. Datum zwischen
Beitrag von: NewDigger1970 am Dezember 13, 2016, 12:01:10
Hallo Ihr fleissigen Helferlein! Ich würde mich freuen, wenn Ihr mir helfen könntet.
Ich erstelle eine Abfrage über 2 Tabellen, in der das Ergebnis im Ufo eines Hfo angezeigt wird. Es sollen die DS angezeigt werden, die die Bedingungen der Abfrage nicht erfüllen. Das klappt mit 2 Bedingungen hervorragend. (PersonalNr und Baustellenname) Jetzt gibt es noch zwei weitere Bedingungen die jeweils in Zusammenhang mit der PersonalNr und einem Datum stehen. Es ist eine Personalverwaltung uns die Kriterien für die Auswahl sind: Wenn der Mitarbeiter schon auf die Baustelle gebucht ist, soll er nicht angezeigt werden. Wenn er auf eine andere Baustelle gebucht ist, deren geplantes Ende im Gültigkeitszeitraum der Baustelle liegt, soll er nicht angezeigt werden und Wenn er auf eine Baustelle gebucht ist, die im Gültigkeitszeitraum der Baustelle anfängt, soll er nicht angezeigt werden. Realisiert habe ich den ersten Teil mit einer Select from .... Not Exsist Abfrage.  Bei dem Versuch jetzt die Daten ins Spiel zu bringen tue ich mich schwer.

Hier mein Ansatz:
Dim sDatum As String
        Dim eDatum As String
       
        sDatum = Forms!frmAuswahlPers!BaustBeginn
        eDatum = Forms!frmAuswahlPers!BaustEnde
   
   
    sSQL = " SELECT * " & _
            " FROM tblGrundDatPers" & _
            " WHERE Not Exists (SELECT * " & _
                                " FROM tblPersBelegt" & _
                                        " WHERE tblPersBelegt.[PersPlanID] = tblGrundDatPers.[PersID]" & _
                                        " AND tblPersBelegt.BaustNameBelegt = Forms!frmAuswahlPers!BaustName" & _
                                        " OR tblPersBelegt.[PersPlanID] = tblGrundDatPers.[PersID]" & _
                                        " AND tblPersBelegt.DatVonBelegt BETWEEN #" & _
                                        " Format$(sDatum, "m-d-yy") & "# AND #" & _
                                        " Format$(eDatum, "m-d-yy") & "#"")"

Fehlermeldung ist : Fehler beim Kompilieren, Syntaxfehler     
Ich hoffe, Ihr könnt mir helfen ..... Danke im Voraus
Titel: Re: Abfrage mit mehreren Kriterien u. A. Datum zwischen
Beitrag von: el_gomero am Dezember 13, 2016, 12:13:41
Hallo Peter,

den Formularbezug musst du so unterbringen:


... " WHERE tblPersBelegt.[PersPlanID] = tblGrundDatPers.[PersID]" & _
                                        " AND tblPersBelegt.BaustNameBelegt ='" & Forms!frmAuswahlPers!BaustName  & "' ..."
Titel: Re: Abfrage mit mehreren Kriterien u. A. Datum zwischen
Beitrag von: NewDigger1970 am Dezember 13, 2016, 12:19:36
Hallo Jürgen, Danke für den Tip, Mein Access weiß das wohl genau so wenig, wie ich, denn der Teil läuft ... ;-)
Ich werde das gleich ändern!
Habe es geändert und danach einen Syntaxfehler. Ohne Hochkommata läuft es problemlos .... ???????
Gruß Peter
Titel: Re: Abfrage mit mehreren Kriterien u. A. Datum zwischen
Beitrag von: DF6GL am Dezember 13, 2016, 13:04:51
Hallo,
in welcher Prozedur steht denn der Code?


Zudem: Es gibt noch Fehler bei der Datums-Formatierung:

Dim sDatum As Date
        Dim eDatum As Date
        Dim sSQL As String

        sDatum = Forms!frmAuswahlPers!BaustBeginn  'je nachdem, wo der Code steht:  Me!BaustBeginn
        eDatum = Forms!frmAuswahlPers!BaustEnde  'je nachdem, wo der Code steht:  Me!BaustEnde
   
.
sSQL = " SELECT * " & _
            " FROM tblGrundDatPers" & _
            " WHERE Not Exists (SELECT * " & _
                                " FROM tblPersBelegt" & _
                                        " AND tblPersBelegt.DatVonBelegt BETWEEN " & _
                                         Format(sDatum, "\#yyyy-mm-dd\#") & " AND " & _
                                         Format(eDatum, "\#yyyy-mm-dd\#")  & " )"
Titel: Re: Abfrage mit mehreren Kriterien u. A. Datum zwischen
Beitrag von: NewDigger1970 am Dezember 13, 2016, 13:09:30
Hallo Franz, der Code steht im Hauptformular und ist die Abfrage zum UF
Und das mit der Formatierung des Datums habe ich mir gedacht. Habe es aber noch nicht gemacht und deswegen um Hilfe gebeten ....

Titel: Re: Abfrage mit mehreren Kriterien u. A. Datum zwischen
Beitrag von: DF6GL am Dezember 13, 2016, 14:18:27
Hallo,

in meinem Post habe ich das doch korrigiert...
Titel: Re: Abfrage mit mehreren Kriterien u. A. Datum zwischen
Beitrag von: NewDigger1970 am Dezember 13, 2016, 14:24:00
Das weiß ich, Aber es funktioniert noch nicht! Morgen mehr dazu! ;-)
Danke erstmal!