Codice in modalità interruzione



  • Codice in modalità interruzione
    di gargiu data: 25/11/2015 12:56:22

    Ciao a tutti,
    vi illustro questa situazione: quando sono in modalità sviluppo e sto lavorando su una UserForm, la lancio per testare se funziona correttamente. Quando la chiudo, mi appare per un attimo l'oggetto form in ambiente VBA e poi sparisce, vedendo solo il codice sorgente. Se cerco di aprire la finestra con "Visualizza oggetto", continua a fare la stessa cosa... la vedo per una frazione di secondo e poi ritorna la visualizzazione del codice. Per poterla visionare, devo agire sul pulsante "Interrompi(CTRL+INTERR)", mi appare una finestra (che se ci riesco vi allego) che mi da il seguente messaggio: "Impossibile eseguire il codice in modalità interruzione", clicco su OK... sul tasto "Ripristina", e finalmente mi riappare la Form su cui posso quindi lavorare.

    Credo che ciò sia dovuto al codice che ho inserito in un modulo per il funzionamento dell'orologio. Ma come faccio per interrompere l'esecuzione di questo nella chiusura della form?
    VI aggiungo sotto il codice che mi aziona l'orologio, che lancio nell'evento...

    Private Sub UserForm_Activate()
    Recalc
    End Sub

    Grazie a tutti per l'atenzione.
     
    Sub Recalc()
    UserForm1.Label_data.Caption = Format(Now, "dddd dd mmmm yyyy" & " : ")
    UserForm1.Label_ora.Caption = Format(Time, "hh:mm:ss")
    Call SetTime
    End Sub
    Sub SetTime()
    Dim SchedRecalc As Date
    SchedRecalc = Now + TimeValue("00:00:01")
    Application.OnTime SchedRecalc, "Recalc"
    End Sub
    Sub Disable()
    Dim SchedRecalc
    On Error Resume Next
    Application.OnTime EarliestTime:=SchedRecalc, Procedure:="Recalc", Schedule:=False
    End Sub