Ho un foglio calc che ha delle macro.
se lo inserisco come oggetto ole in un documento writer, la prima volta le macro funzionano . poi se salvo e chiudo il documento, se lo riapro le macro non vengono eseguite.
Ciao, risposta fornita ponendo il quesito a Chat GPT:
Capito — è un comportamento abbastanza tipico di LibreOffice quando entrano in gioco macro + oggetti OLE 
Ti spiego cosa succede e come aggirarlo.
Perché succede
Quando inserisci un file Calc con macro come oggetto OLE dentro Writer:
-
Alla prima apertura
L’oggetto è ancora “collegato” al file originale → le macro vengono eseguite. -
Dopo salvataggio e riapertura di Writer
L’oggetto OLE viene trattato come incorporato
LibreOffice non esegue automaticamente le macro degli oggetti OLE incorporati, per motivi di sicurezza.
Quindi:
- le macro esistono ancora
- ma non vengono avviate automaticamente
- e spesso non partono nemmeno su eventi (apertura, modifica, ecc.)
È una limitazione di sicurezza, non un bug vero e proprio.
Controlli da fare subito (rapidi)
Sicurezza macro
Vai in:
Strumenti → Opzioni → Sicurezza → Sicurezza delle macro
Imposta almeno:
-
Medio
oppure - Basso (solo per test)
E assicurati che:
- il file sia in una cartella attendibile
Strumenti → Opzioni → Sicurezza → Cartelle attendibili
Soluzioni pratiche (quelle che funzionano davvero)
SOLUZIONE MIGLIORE: collegare invece di incorporare
Quando inserisci il foglio Calc in Writer:
Inserisci → Oggetto → Oggetto OLE → Da file
Spunta “Collega al file”
Non incorporare
In questo modo:
- le macro restano nel file Calc originale
- vengono eseguite correttamente anche dopo riapertura
- comportamento molto più stabile
Alternativa: macro nel documento Writer
Se l’oggetto deve restare incorporato:
- sposta la logica delle macro in Writer
- fai in modo che Writer:
- apra/modifichi il foglio OLE
- richiami manualmente le macro
È più complicato e fragile, ma possibile.
Cosa NON funziona (o funziona male)
- Macro “Auto_Open” nel Calc OLE
- Eventi automatici del foglio incorporato
- Aspettarsi che l’OLE si comporti come un file aperto normalmente
LibreOffice blocca tutto questo di proposito.
Riassunto rapido
-
È normale -
È una limitazione di sicurezza -
Collegare il file Calc è la soluzione consigliata -
Gli OLE incorporati non eseguono macro automaticamente