Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: KonradR am Juni 06, 2023, 09:08:06

Titel: SQL Anweisung wird im Textfeld angezeigt und nicht ausgeführt
Beitrag von: KonradR am Juni 06, 2023, 09:08:06
Hallo liebe Accessfreunde,

ich habe eine SQL-Anweisung geschrieben, die mir in einem Textfeld den Wert (die Summe) einer gruppierten Abfrage abhängig von der Auswahl eines Listenfeldes im Formmular anzeigen soll. Leider zeigt es mir nur den Text der SQL-Anweisung aus dem Code. Was mache ich da falsch? Habt ihr da eine Idee? Hier mein Code:

 Private Sub txtZutatBrennwertKJ_AfterUpdate()
    Dim strSQL As String

    strSQL = "SELECT ZutatBrennwertKJ FROM qrySummeTagCKalFetteKkohlenhEiweise WHERE tagID  = " & Forms![frm00BWT_Haupt].Form![lstTag]

    Forms![frm00BWT_Haupt]![fsubBWTMahlzeitRezepte_Unter].Form!.Requery
    Forms![frm00BWT_Haupt].Form![txtSummekJ] = strSQL
End Sub

Und ein Bild von der Anzeige aus dem Formular:
txtAnzeige.png

und ein Bildschirmfoto aus der Entwurfsansicht der Abfrage:
qrySummeTagCKalFetteKkohlenhEiweise.png
Titel: Re: SQL Anweisung wird im Textfeld angezeigt und nicht ausgeführt
Beitrag von: MzKlMu am Juni 06, 2023, 09:21:10
Hallo,
das geht grundsätzlich nicht. In einem Textfeld kann man keine Select Anweisung nutzen.
Hier musst Du DSum (DomSumme) verwenden. Dann brauchst Du keine Abfrage.
Oder mit DLookup (DomWert) den Wert aus der Abfrage holen.
Titel: Re: SQL Anweisung wird im Textfeld angezeigt und nicht ausgeführt
Beitrag von: KonradR am Juni 06, 2023, 11:46:48
Hallo MzKlMu,

Zitat von: MzKlMu am Juni 06, 2023, 09:21:10Hallo,
das geht grundsätzlich nicht. In einem Textfeld kann man keine Select Anweisung nutzen.
Hier musst Du DSum (DomSumme) verwenden. Dann brauchst Du keine Abfrage.
Oder mit DLookup (DomWert) den Wert aus der Abfrage holen.

danke für deine Antwort. Ich habe meinen VBA-Code jetzt geändert:
Private Sub txtZutatBrennwertKJ_AfterUpdate()

    Forms![frm00BWT_Haupt]![fsubBWTMahlzeitRezepte_Unter].Form!.Requery
    Forms![frm00BWT_Haupt].Form![txtSummekJ] = DLookup("ZutatBrennwertKJ", "qrySummeTagCKalFetteKkohlenhEiweise", "tagID  =" & Forms![frm00BWT_Haupt].Form![lstTag]) & ""
End Sub

Leider erscheint dann im betreffenden Textfeld ein undefiniertes Symbol und in der msgbox (zur Kontrolle) ein Fragezeichen. Hier ein Bild:
txtAnzeige.png
Hast du da eine Idee, woran das liegen könnte?
Titel: Re: SQL Anweisung wird im Textfeld angezeigt und nicht ausgeführt
Beitrag von: Tassimo am Juni 19, 2023, 22:58:34
Hi,

Gibt Forms![frm00BWT_Haupt].Form![lstTag] auch tatsächlich die Tagzahl als Zahl aus ?

Und die Abfrage liefert in der Ansicht entsprechende Tagzeilen (pro Tag nur eine Zeile) mit den gewünschten Summen ?


Titel: Re: SQL Anweisung wird im Textfeld angezeigt und nicht ausgeführt
Beitrag von: DF6GL am Juni 20, 2023, 19:29:50
Hallo

die Fehler stecken hier:

   
ZitatForms![frm00BWT_Haupt]![fsubBWTMahlzeitRezepte_Unter].Form!.Requery   ---> .Form.Requery
Und

Zitat, "tagID  =" & Forms![frm00BWT_Haupt].Form![lstTag]) & ""      -->     & Forms![frm00BWT_Haupt].Form![lstTag] & ")"