Hallo,
ich habe in VBA eine Aktualisierungsabfrage geschrieben. Nun brauche ich noch einen Befehl um sie auszuführen. Aktualisierungsabfragen muss man ja meines Wissens explizit ausführen. Der SQLstring der Aktualisierungsabfrage lautet:
AlMark = "UPDATE Abteilungen RIGHT JOIN ((Gerätegruppen INNER JOIN Posten ON Gerätegruppen.GerätegruppeID = Posten.Gerätegruppe) "
AlMark = AlMark & "LEFT JOIN [E-Check] ON Posten.Barcode = [E-Check].Barcode) ON Abteilungen.ID = [E-Check].Ort "
AlMark = AlMark & "SET Posten.Entfernen = True "
AlMark = AlMark & "WHERE (((Abteilungen.Ort)=" & Zimmer & ")) AND Posten.Entfernen = False AND "
AlMark = AlMark & "[E-Check].Datum Between " & Format(Anfdat, "\#yyyy-mm-dd\#") & " AND " & Format(Enddat, "\#yyyy-mm-dd\#")
Nun bräuchte ich noch etwas von der Art "Execute" oder so ähnlich.
Vielen Dank im Voraus
Beate1953
Hallo,
so sollte das gehen:
CurrentDb.Execute AlMark, dbFailOnError
dbFailOnError sorgt für Fehlermeldungen falls etwas schief geht. Die Warnmeldungen "Sie wollen...." werden aber unterdrückt.
Hallo,
vielen Dank, es klappt prima.
Nun möchte ich noch ein Requery für das Formular machen, um die geänderten Werte anzuzeigen. Aber wie macht man das, wenn die RecordSource ein SQLstring ist? Ich habe es mit Me.Requery (SQLstr) versucht, aber da kommt die Meldung "Falsche Anzahl an Argumenten oder ungültige Zuweisung zu einer Eigenschaft." Wie heißt das richtig?
Viele Grüße
Beate1953
Hallo,
vielen Dank, jetzt klappt es prima!
Nochmals vielen Dank
Beate1953