Chiudere Excel con un pulsante



  • Chiudere Excel con un pulsante
    di maxmi data: 17/05/2013 17:04:03

    Ciao
    chiedo vostro aiuto per una cosa sicuramente banale.
    Ho inserito un pulsante su un foglio di excel per
    chiudere tale foglio.
    Questa è la macro che ho creato

    Sub Chiudi_Excel()
    Application.Quit
    End Sub

    ma mi chiede sempre di salvare eventuale modifiche
    fatte o non fatte sul foglio.
    Io vorrei chiudere del tutto senza che mi compaia
    la richiesta di salvataggio, è possibile.

    grazie



  • di HarryBosch data: 17/05/2013 18:16:04

    Ciao Maxmi
    per evitare la finestra di dialogo, devi disabilitare la richiesta all'inizio della sub e ricordarti di reinserirla al termine della stessa.
    L'istruzione è la seguente:
    Application.DisplayAlerts = False

    Se vuoi salvare il file prima della chiusura devi indicarlo: ActiveWOrkbook.Save

    Nel tuo esempio hai utilizzato "Application.Quit", ma ti invito a scoprire la differenza fra le due sub che ti posto, a scopo didattico ^_^
     
    Sub Chiudi_Excel()
    'per salvare il file prima di chiudere
        ActiveWorkbook.Save
    
        With Application
            .DisplayAlerts = False
            .Quit
            .DisplayAlerts = True
        End With
    End Sub
    
    
    Sub Chiudi_Excel1()
        ActiveWorkbook.Save
    
        With Application
            .DisplayAlerts = False
             ActiveWorkbook.Close
            .DisplayAlerts = True
        End With
    End Sub
    



  • di Vecchio Frac data: 17/05/2013 18:19:57

    Una soluzione ancora più concisa è "ingannare" Excel facendogli credere che il foglio sia già stato salvato anche se magari non è vero.
    Vedete l'esempio :)
     
    sub chiudi_excel()
        thisworkbook.saved = true
        application.quit
    end sub






  • di maxmi data: 17/05/2013 20:24:50

    grazie HarryBosch
    grazie Vecchio Frac
    oggi ho imparato qualcosa di nuovo