Come proteggere le macro in Excel e il codice VBA

  • Configurare il Centro protezione per controllare come le macro vengono abilitate o bloccate in ogni cartella di lavoro di Excel.
  • Proteggi il tuo codice VBA con una password e, se necessario, firma digitalmente i tuoi progetti con certificati.
  • Combina documenti affidabili, firme e protezione cellulare per ridurre i rischi nei registri condivisi e negli ambienti aziendali.

Protezione delle macro in Excel

Quando si lavora quotidianamente con i fogli di calcolo, è facile finire per creare un enorme sistema di formule, riferimenti e automazioni. In questo contesto, macro excel Diventano il tuo migliore alleato per evitare di ripetere le stesse attività. Ma, proprio come possono farti risparmiare ore di lavoro, possono anche essere una porta d'accesso a problemi di sicurezza se non gestiti correttamente.

Ecco perché è così importante Protezione delle macro in ExcelProteggere il codice, controllare chi può eseguirlo, decidere quali file sono attendibili e, in definitiva, bilanciare automazione e sicurezza sono fondamentali. Di seguito, spiegheremo come funzionano le macro in termini di sicurezza, quali opzioni offre Excel per proteggerle, come firmarle digitalmente e quali limitazioni si applicano quando si lavora con cartelle di lavoro condivise ed Excel Online.

Cos'è esattamente una macro in Excel e perché può essere pericolosa?

Un macro in Excel Si tratta, fondamentalmente, di una sequenza di istruzioni che il programma esegue automaticamente per svolgere un'attività ripetitiva. Queste istruzioni sono solitamente scritte in Visual Basic per applicazioni (VBA)Esistono anche le vecchie macro di Excel 4.0 (XLM), che sono ancora supportate in determinati scenari.

Questo tipo di automazione consente di risparmia tempo e riduci al minimo l'errore umanoPerché invece di ripetere manualmente la stessa operazione cento volte, la si programma una sola volta e la si esegue quando necessario. Il problema è che queste stesse funzionalità possono essere utilizzate per scopi dannosi. Ad esempio, per scaricare e installare malware, modificare file senza autorizzazione o spiare le informazioni degli utenti.

Dal punto di vista della sicurezza, qualsiasi file contenente macro ricevuto da terze parti dovrebbe essere considerato potenzialmente pericoloso. Almeno finché non potrai verificarne l'origineÈ proprio per questo che Office include un sistema di avvisi, blocchi e attendibilità dei documenti. Questo impedisce l'esecuzione di codice senza la previa autorizzazione dell'utente.

In sintesi, le macro sono un componente fondamentale per l'automazione dei processi in Excel, ma rappresentano anche un potenziale vettore di attacco, per cui è consigliabile... conoscere bene tutti gli strumenti che il programma offre per gestirli e proteggerli.

Excel Web

Convertire una cartella di lavoro in un documento attendibile per consentire le macro

Quando apri un Cartella di lavoro Excel che contiene codice VBA o macro XLM, normalmente un avviso di sicurezza Sotto la barra multifunzione, l'avviso indica che il file include delle macro. Per impostazione predefinita, non verranno eseguite finché non si prende una decisione.

Se riconosci l'origine del file e sei certo che il contenuto è legittimo, puoi rendere quel libro specifico un documento affidabilein modo che le macro vengano eseguite senza che Excel te lo chieda nuovamente ogni volta che le apri.

Il processo generale in una cartella di lavoro di Excel è molto semplice:

  1. Per prima cosa fai clic su Abilita contenuto nella barra di avviso che appare quando si apre il file.
  2. Successivamente, si accetta la finestra di dialogo di sicurezza che chiede se si desidera considerare attendibile il documento. Con questa conferma, Excel contrassegna il file come sicuro.
  3. Una volta contrassegnato come affidabile, il le macro sono abilitate in quel libro senza ulteriore preavviso. Questo è molto comodo quando si lavora sempre con gli stessi file interni e si sa che provengono dalla propria organizzazione o da una fonte di cui ci si fida.

Se vuoi smettere di considerare attendibile quella cartella di lavoro o altri file che hai contrassegnato in precedenza, non esiste un'opzione per revocare l'attendibilità da un singolo documento specifico; dovrai elimina tutti i documenti attendibili dalle opzioni di sicurezza di Office per visualizzare nuovamente gli avvisi in tutti i dispositivi.

Configurare la sicurezza delle macro dal Centro protezione

Il modo più completo per proteggere le macro in Excel consiste nel rivedere la configurazione del Centro protezioneQuesto è il pannello in cui sono raggruppate tutte le opzioni di sicurezza relative a macro, contenuto attivo, accesso VBA e altre funzionalità simili.

Si prega di notare che se si utilizza un computer gestito dalla propria azienda o istituto scolastico, l'amministratore di sistema potrebbe avere bloccando la modifica di alcune opzioniIn tal caso, ci saranno parametri che non potrai modificare autonomamente, poiché sono gestiti tramite criteri di gruppo o altri strumenti di amministrazione.

Per accedere alle opzioni macro nel Centro protezione di Excel, il percorso usuale è il seguente:

  1. Apri la scheda archivio.
  2. Entrare Opzioni.
  3. Nel pannello laterale, seleziona la categoria Centro protezioneDa lì puoi premere il pulsante Impostazioni del Centro protezione e, nella nuova finestra, entra nella sezione Impostazioni macro.
  4. In questa sezione troverete diverse opzioni che determinano il comportamento di Excel quando rileva macro in un file. Scegliere quella giusta fa la differenza e garantisce un ambiente di lavoro migliore. molto restrittivo e sicuro oppure una più flessibile ma con più rischi.

Esamineremo in dettaglio ciascuna delle alternative disponibili, tenendo presente che non tutte le applicazioni di Office visualizzano esattamente le stesse opzioni di Excel e che alcune fanno riferimento specificamente a macro VBA oa macro Excel 4.0 (XLM).

le macro eccellono

Opzioni di configurazione delle macro di Excel

Nel Centro protezione, vedrai una serie di caselle di controllo e pulsanti di selezione che ti consentono di decidere come gestire le macro. Ognuna di queste opzioni si concentra su un diverso livello di equilibrio tra sicurezza e comfort.

  • Disabilita tutte le macro senza notificaIn questa modalità, non solo viene impedita l'esecuzione di qualsiasi macro, ma vengono nascosti anche gli avvisi di sicurezza, quindi Excel blocca semplicemente il codice senza visualizzare alcun messaggio all'utente.
  • Disabilita tutte le macro con notificaIn questo caso, Excel blocca ancora l'esecuzione automatica delle macro, ma visualizza un avviso di sicurezza ogni volta che si apre un file che le contiene, dando la possibilità di abilitarle manualmente, se lo si desidera. Questa impostazione offre un ragionevole equilibrio, poiché Evitare l'esecuzione silenziosa di codice potenzialmente pericoloso, ma allo stesso tempo ti consente di attivare macro che sai essere affidabili con uno o due clic, senza dover modificare costantemente le impostazioni generali.
  • Disabilita tutte le macro tranne quelle firmate digitalmenteIn questo scenario, Excel blocca tutte le macro e visualizza avvisi di sicurezza se il file contiene codice non firmato, ma consente l'esecuzione automatica Macro che hanno una firma digitale valida proveniente da un editore di cui ti fidi già.
  • Abilita tutte le macro (non consigliato, potrebbe eseguire codice potenzialmente pericoloso)Come suggerisce il nome, in questa modalità Excel esegue tutte le macro che trova senza chiedere conferma, rendendo il computer... particolarmente vulnerabile al codice dannoso.

Oltre a queste quattro principali opzioni di comportamento generale, Excel include un campo relativo alle macro legacy. Excel 4.0 (XLM)Nello specifico, puoi trovare un'opzione simile a Abilita le macro di Excel 4.0 quando sono abilitate le macro VBA.

Infine, l'opzione è inclusa all'interno di questo stesso blocco Accesso attendibile al modello di oggetti del progetto VBA, che regola se ad altre applicazioni è consentito o meno accedere automaticamente al modello di oggetti VBA in Excel.

Proteggi con password il codice VBA della tua macro

Oltre a decidere se eseguire o meno le macro, un altro aspetto fondamentale per proteggerle è proteggi il tuo codiceIn questo modo evitiamo qin modo che altri utenti non possano visualizzarlo, modificarlo o copiarlo senza autorizzazione. Excel consente di impostare una password a livello di progetto VBA per raggiungere questo obiettivo.

La procedura tipica per proteggere il codice macro sarebbe quella di aprire la cartella di lavoro di Excel contenente il progetto VBA che si desidera bloccare e quindi andare alla scheda Programmatore dalla barra multifunzione. Da lì puoi cliccare sul pulsante Visual Basic per aprire l'editor VBA associato a quel libro.

Una volta all'interno dell'editor di Visual Basic, dovrai selezionare il tuo progetto nel pannello di sinistra e accedere al menu Strumenti, dove troverai l'opzione Proprietà di VBAProject (Il nome esatto può variare a seconda della lingua di installazione, ma si riferisce alle proprietà del progetto corrente.)

Nella finestra di dialogo delle proprietà, vedrai diverse schede; quella che ti interessa per bloccare il codice è la scheda ProtezioneAl suo interno avrai la possibilità di selezionare l'opzione Blocca il progetto per la visualizzazione, che impedisce ad altri utenti di visualizzare il contenuto del progetto senza immettere la password.

Dopo aver selezionato la casella, dovrai scrivere un protezione con password Inserisci la password nel campo corrispondente e ripetila nel campo di conferma per assicurarti che non ci siano errori di battitura. Dopo aver inserito la password due volte, puoi cliccare su AccettareChiudere l'editor VBA e tornare a Excel.

Per una corretta applicazione della protezione è importante che chiudere il file Excel e riaprirlo.

le macro eccellono

Firmare digitalmente le macro con i certificati

Oltre alla protezione tramite password, un altro modo efficace per proteggere le macro è utilizzare firme digitaliOffice utilizza la tecnologia Microsoft Authenticode per consentire agli sviluppatori di macro di firmare digitalmente i propri progetti o file.

Il processo di firma digitale si basa su un certificato digitale che identifica l'autore della macro. Quando un progetto VBA o un documento contenente macro viene firmato, il certificato garantisce che il file provenga da quello specifico firmatario e che il contenuto non sia stato modificato da quando è stata applicata la firma.

Dopo aver installato il certificato sul computer, è possibile utilizzarlo per firmare i progetti macro, in modo che quando altri utenti aprono tali file, Excel possa autenticarli. verificare la validità della firma e trattare il contenuto come affidabile se l'editore è contrassegnato come attendibile.

Esistono due modi principali per ottenere un certificato per firmare le macro.

  • Puoi ricorrere a un ente emittente di certificati commerciali. In questo modo otterrai un certificato riconosciuto, adatto all'uso in ambienti aziendali o pubblici.
  • Puoi anche ottenere un certificato tramite l'amministratore della sicurezza interna o il reparto IT della tua organizzazione.

Una volta ottenuto il certificato appropriato, il passo successivo è accedere alle opzioni di firma digitale all'interno dell'editor VBA e associare il certificato al progettoDa quel momento in poi, ogni volta che distribuirai un file con quel progetto, la firma ne garantirà l'integrità e l'origine. Puoi anche combinarla con l'impostazione "solo macro firmate" nel Centro protezione per aumentare significativamente il livello di protezione.

Utilizzo di macro e protezione nelle cartelle di lavoro condivise e in Excel online

In molti ambienti di lavoro attuali è comune utilizzare cartelle di lavoro Excel condivise Attraverso servizi come Microsoft Teams o OneDrive. L'idea è che più colleghi possano modificare lo stesso file contemporaneamente da postazioni diverse.

In questo contesto, sorgono due domande molto comuni: come proteggere le cellule e le formule per impedire ad altri utenti di eliminarli accidentalmente? Le macro possono essere utilizzate in Excel online quando quel libro viene condiviso tramite Teams?

Per quanto riguarda la prima domanda, Excel offre strumenti di protezione di fogli e cartelle di lavoro che consentono di contrassegnare determinate celle come bloccato Imposta quindi una password in modo che solo determinate persone possano modificarla. In questo modo puoi lasciare sbloccate solo le celle di inserimento dati e proteggere le altre in modo che le formule non possano essere modificate.

In questo modo i tuoi colleghi potranno scrivere negli intervalli che hai scelto, ma non potranno eliminare o modificare le formule Elementi essenziali per il funzionamento del file, molto utili quando il libro è complesso o contiene calcoli delicati.

Se hai bisogno che le tue macro funzionino, dovrai aprire il file con versione completa di Excel installato sul computer, anche se il file è archiviato in Teams o OneDrive. La cartella di lavoro può comunque essere condivisa, ma le macro verranno eseguite dall'applicazione desktop e non dall'ambiente online.

È importante spiegarlo ai colleghi in modo che capiscano che alcune automazioni non saranno disponibili dal browser. In questi casi, la strategia migliore è solitamente quella di combinare un buon protezione cellulare con procedure di utilizzo chiare e, quando necessario, eseguire le macro da Excel desktop per applicare processi più avanzati.