Condividi tramite

Comando salva su maschera

Anonimo
2020-11-15T19:13:28+00:00

Salve a tutti,

ho una semplice maschera sulla quale ho inserito un pulsante Annulla ed uno Salva.

Per il pulsante Salva la sub routine usa il comando: 

Private Sub cmd_salva_DblClick(Cancel As Integer)

DoCmd.Save

End Sub

Per il pulsante Annulla la sub routine usa il comando:

Private Sub BTNUNDO_DblClick(Cancel As Integer)

DoCmd.RunCommand acCmdUndo

End Sub 

Ora il problema che ho è che il comando salva non funziona.

Mi spiego meglio.

Se cambio il dato su una delle caselle di testo presenti nella maschera clicco il pulsante salva e poi clicco il pulsante Annulla, il valore nella casella di testo viene ripristinato al vecchio valore. Cioè il valore non è stato salvato.

Non capisco il perchè .

Qualcuno mi sa dare una dritta.

Grazie

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

4 risposte

Ordina per: Più utili
  1. Anonimo
    2020-11-17T09:36:26+00:00

    Ciao Gabriele,

    per il mio caso può andare bene il:  Me.TuoControllo.Undo.

    Grazie

    Manuele

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2020-11-17T07:37:34+00:00

    Ciao Manuele,

    Per ripristinare puoi usare più semplicemente ancora il comando: Me.Undo, oppure Me.TuoControllo.Undo

    Dimmi se così può funzionare.

    Ciao,

    Gabriele

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2020-11-16T11:51:26+00:00

    Ciao Gabriele,

    premessa :

    dopo che il record modificato è stato salvato, il comando DoCmd.RunCommand acCmdUndo non può più ripristinare il vecchio valore del record).L' affermazione corretta?

    Se è così,

    ho provato le tue istruzioni ma il problema rimane.

    Ho provato anche su altre maschere del database e il comportamento è lo stesso.

    Ho provato anche ad inserire la macro, ma nulla da fare.

    Mi viene il sospetto che ci sia un impostazione( che innavertitamente ho impostato) a livello property sheet della maschera oppure in opzioni database che da questo comportamento.

    E' possibile?

    Grazie

    Manuele

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2020-11-16T08:20:13+00:00

    Ciao Manuele,

    io ti consiglio di utilizzar questo codice

    Private Sub cmd_salva_DblClick(Cancel As Integer)

    'salvo il record

    DoCmd.RunCommand acCmdSaveRecord

    End Sub

    In questo modo vai a salvare le modifiche di un record. Con il DoCmd.Save vai a salvare l'oggetto attivo, e non l'intero record. 

    Utilizza sempre i DOCS di microsoft:

    https://docs.microsoft.com/en-us/office/vba/api/access.docmd.save

    Resto a disposizione,

    Gabriele

    La risposta è stata utile?

    0 commenti Nessun commento