Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Sintomi

In Microsoft Office Excel, il codice macro di Microsoft Visual Basic, Application (VBA) contenuto "dietro" un foglio di lavoro o una cartella di lavoro potrebbe non funzionare correttamente.

Causa

Ciò si verifica se si verificano entrambe le condizioni seguenti:

  • Il codice in questione è contenuto all'interno di una subroutine con esecuzione automatica, ad esempio una subroutine Auto_Open o Auto_Close.

  • Il codice non è contenuto in un modulo di Visual Basic, ma "dietro" un foglio di lavoro o la cartella di lavoro stessa.

Soluzione alternativa

Affinché le subroutine eseguite automaticamente funzionino correttamente in Microsoft Excel, devono essere contenute in un modulo di Visual Basic.

È necessario inserire un modulo di Visual Basic nella cartella di lavoro e quindi inserire il codice nel nuovo modulo.

Per inserire un modulo di Visual Basic:

  1. In Esplora progetti di Visual Basic Editor attivare la cartella di lavoro che contiene il codice in questione.

  2. Scegliere Modulo dal menu Inserisci.

Dopo aver inserito il nuovo modulo, tagliare il codice dalla posizione originale e incollarlo nel modulo di Visual Basic. Quindi, salvare la cartella di lavoro.

Ulteriori informazioni

In Excel il codice VBA può essere archiviato in tre posizioni diverse: in un modulo di Visual Basic, in un modulo di classe Visual Basic e in fogli di lavoro e cartelle di lavoro "dietro".

Per modificare il codice "dietro" un foglio di lavoro o una cartella di lavoro:

  1. Attivare Visual Basic Editor (premere ALT+F11).

  2. Nella finestra Esplora progetti verranno visualizzate voci simili alle seguenti:

        
         VBAProject (Book1)
         Microsoft Excel Objects
            Sheet1 (Sheet1)
            Sheet2 (Sheet2)
            Sheet3 (Sheet3)
            ThisWorkbook         
         Modules
             Module1

Se si fa doppio clic su uno dei nomi dei fogli di lavoro o su ThisWorkbook, è possibile digitare codice nella finestra del codice. Tale codice non incluso in un modulo di Visual Basic è considerato "dietro" il foglio di lavoro o
Thisworkbook.

Se una Auto_Open, una Auto_Close o un'altra subroutine a esecuzione automatica è archiviata "dietro" un foglio di lavoro o ThisWorkbook, potrebbe non funzionare correttamente quando si apre o si chiude la cartella di lavoro oppure quando si esegue un'azione che dovrebbe causare l'esecuzione della subroutine.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×