Capitolo 2 · 2.5
Macro di Word ed Excel (VBA): cosa funziona ancora?
Una macro è un piccolo programma all'interno di un documento, ad esempio un pulsante che crea una fattura o ordina un elenco. In Word ed Excel le macro sono scritte in VBA. Riconosce questi file dall'estensione docm, xlsm o pptm, oppure si tratta di vecchi file doc e xls.
Come stanno davvero le cose
| LibreOffice | Euro-Office | |
|---|---|---|
| Aprire il file e usare i dati | Sì | Sì |
| Eseguire macro VBA | In parte, soprattutto da Excel, se attiva questa funzione | No |
| Macro personalizzate | In LibreOffice Basic e Python | In JavaScript |
In LibreOffice
Perché non succede nulla? Per motivi di sicurezza, LibreOffice disattiva le macro come impostazione predefinita. Vedrà quindi un messaggio come Le macro sono disattivate a causa delle impostazioni di sicurezza delle macro.
- Scelga Strumenti > Opzioni... > Carica/salva > Proprietà VBA. Per Microsoft Excel (e se necessario per Word) selezioni Carica il codice Basic, Codice eseguibile e Salva il codice Basic originale.
- Scelga Strumenti > Opzioni... > LibreOffice > Protezione e faccia clic su Sicurezza delle macro.... Scelga Medio: in questo modo LibreOffice Le chiederà cosa fare per ogni file che contiene macro.
- Chiuda il file e lo riapra. Scelga Abilita le macro (Enable Macros), ma solo se si fida del file.
LibreOffice è in grado di eseguire molto codice VBA, ma non tutto. Se un pulsante non funziona, la macro deve essere modificata nell'editor Basic (Strumenti > Macro > Modifica macro...). Per farlo servono conoscenze di programmazione.
Se salva di nuovo il file in formato xlsm, il codice VBA originale viene conservato grazie a Salva il codice Basic originale. Se invece lo salva in formato ods, il codice VBA va perso.
In Euro-Office
Euro-Office non esegue codice VBA. Il file si apre normalmente e Lei vede tutti i dati e le formule, ma i pulsanti non fanno nulla. Nella scheda Visualizza, alla voce Macro, può creare una macro in JavaScript o registrarne una. Maggiori informazioni in Un file Excel con macro VBA: e adesso?.

Le serve ancora la macro?
Molte vecchie macro ordinano, filtrano, colorano o cercano dati. Spesso è possibile farlo senza macro:
- colorare: formattazione condizionale (Formattazione condizionale: colorare le celle automaticamente);
- cercare: CERCA.VERT o CERCA.X (Ricerca verticale con CERCA.VERT e CERCA.X);
- riepilogare: una tabella pivot (Creare una tabella pivot);
- lettere da un elenco: stampa unione (Creare lettere da un elenco di indirizzi (stampa unione)).
Trova maggiori informazioni sulle scelte a Sua disposizione in Macro, modelli e test di compatibilità.
Attenzione: le macro nei file di altre persone possono essere dannose. Non imposti mai la sicurezza delle macro su Basso e attivi le macro solo per i file di cui si fida. Conservi sempre l'originale di un file che contiene macro.
