Condividi tramite

Eseguire una query di aggiornamento tramite vba e sql

Anonimo
2010-06-21T11:51:40+00:00

Buon giorno a tutto ng

la mia domanda equivale a una lezione a distanza, mi scuso e spero possiate aiutarmi.

Sto cercando di eseguire la mia prima istruzione sql tramite codice.

Quello che vorrei ottenere è che dopo la chiusura del report i record che non hanno una data di stampa vengano aggiornati con la data odierna

Vi posto il codice incompleto e magari pure sbagliato...

Sono ben accetti anche link a tutorial o simili, mi rendo conto che può essere una scocciatura rispondere in maniera puntuale alla mia domanda...

Grazie in anticipo

Option Compare Database

Option Explicit

Dim Domanda As Long

Dim cn As ADODB.Connection

Dim rs As ADODB.Recordset

Dim SqlStmt As String

Private Sub Report_Close()

Domanda = MsgBox("Il report è estato stampato correttamente?", vbYesNo)

If Domanda = vbYes Then

         On Error GoTo ErroreCaricamento

    Set cn = CurrentProject.AccessConnection

    Set rs = New ADODB.Record

    Set rs.ActiveConnection = cn

SqlStmt = "SUPDATE TblCollegamentiAccettazione SET tblCollegamentiAccettazione.DataStampa = Date()" _

& "Where [IDRapportoProva]>=" & Forms!frmIntervalloRdP!InizioRdP & "and" & "[IDRapportoProva] <=" & Forms!frmIntervalloRdP!FineRdP & "and" & "[stampato]=" & 0

'TblCollegamentiAccettazione è la tbl che dovrei aggiornare con la data odierna x i record che hanno il check stampato=False

'IDRapportoProva è il campo chiave primaria della TblCollagamentiAccettazione

'tramite la frmIntervalloRdP filtro il report di stampa da rdp n. a Rdp n.

'A QUESTO PUNTO NON SO PROPRIO COME CONTINUARE

Else

 End If

Exit_Form_Close:

Exit Sub

ErroreCaricamento:

MsgBox "si è verificato l'errore: " & (Err.Number) & " " & Err.Description, vbOKOnly

End Sub

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2010-06-21T12:32:34+00:00

Ciao Elena,

puoi fare così


Private Sub Report_Close()

   On Error GoTo ErroreCaricamento

   Dim SqlStmt As String

   If MsgBox("Il report è estato stampato correttamente?", vbYesNo) = vbYes Then

   SqlStmt = "UPDATE TblCollegamentiAccettazione " & _

             "SET [DataStampa] = Date(), [stampato]=True " & _

             "WHERE [IDRapportoProva] BETWEEN " & Forms!frmIntervalloRdP!InizioRdP & " and " & Forms!frmIntervalloRdP!FineRdP & _

             " and [stampato]= False"

   CurrentDb.Execute SqlStmt, dbFailOnError

   End If

Exit_Form_Close:

   Exit Sub

ErroreCaricamento:

   MsgBox "si è verificato l'errore: " & (Err.Number) & " " & Err.Description, vbOKOnly

   Resume Exit_Form_Close:

End Sub


Ciao

Giorgio Rancati

La risposta è stata utile?

0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2010-06-21T13:06:17+00:00

    Ti ringrazio molto per la risposta, purtroppo ora non posso provarla, rimando tutto a domani.

    grazie infinitamante

    La risposta è stata utile?

    0 commenti Nessun commento