BeforeUpdate Combobox Ripristino valore precedente

di il
3 risposte

BeforeUpdate Combobox Ripristino valore precedente

Ci risono…

Su una form ho inserito un controllo sul BeforeUpdate di una combo per chiedere conferma sulla volontarietà della modifica ma in caso di risposta negativa? Cancel=true? Cmd.Undo e mi aspetterei che nella combo visualizzassi il valore prima della modifica e invece rimane visualizzato il nuovo valore.

Private Sub CmbMesi_BeforeUpdate(Cancel As Integer)
    If MsgBox("Proseguendo le eventuali modifiche andranno perse!" & Chr(13) & Chr(10) & "Confermi?", vbOKCancel) = vbCancel Then
        Cancel = True
        Me.CmbMesi.Undo
    End If
End Sub

Suggerimenti?

3 Risposte

  • Re: BeforeUpdate Combobox Ripristino valore precedente

    Temo tu abbia “omesso” un dettaglio fondamentale, che provo a chiarire io e magari sarà a conferma.

    La tua ComboBox è un controllo NON ASSOCIATO, fai una verifica facendo la medesima cosa su una Combo Associata e vedrai che ritorna al valore PRE modifica.

    Per questo motivo non può ripristinare il valore precedente… temo non ci sia soluzione, almeno a me non viene in mente su 2 piedi-

  • Re: BeforeUpdate Combobox Ripristino valore precedente

    Esattamente come sospettavi.

    Avevo scritto del codice sull'AfterUpdate ma vedrò di spostarlo su un pulsante per evitare modifiche involontarie

    Grazie

  • Re: BeforeUpdate Combobox Ripristino valore precedente

    Ciao.

    Non sono sicuro che funzioni, ma salvare l utimo valore in una variabile mettendo il codice sull evento down e poi ripristinarlo dopo l undo?

Devi accedere o registrarti per scrivere nel forum
3 risposte