Ron ha una cartella di lavoro che richiede l’uso di riferimenti circolari, per i quali può configurare Excel perfettamente. Dopo aver protetto e inviato tramite posta elettronica la cartella di lavoro ai colleghi, al momento del loro utilizzo, la capacità iterativa (richiesta per i riferimenti circolari) viene disattivata e il foglio di lavoro non riesce a causa di errori di riferimento circolare. Ron si chiede se esiste un modo per impostare come predefinito la cartella di lavoro in modo che i riferimenti circolari siano abilitati quando viene caricata dai suoi colleghi.

L’unico modo per assicurarsi che le cartelle di lavoro dei colleghi abbiano i riferimenti circolari abilitati è aggiungere una macro alla cartella di lavoro. La macro in realtà è lunga solo una riga e ti consigliamo di assicurarti di aggiungerla al modulo ThisWorkbook:

Private Sub Workbook_Open()

Application.Iteration = True End Sub

La macro viene eseguita ogni volta che viene aperta la cartella di lavoro e attiva l’impostazione dei riferimenti circolari.

Ci sono un paio di cose da ricordare quando si tratta di farlo funzionare davvero per i tuoi colleghi. Innanzitutto, la tua cartella di lavoro dovrà essere salvata in una versione “abilitata per macro”, il che significa che avrà l’estensione XLSM. Se i tuoi colleghi disabilitano le macro, esplicitamente quando aprono la cartella di lavoro o implicitamente tramite le impostazioni del Centro sicurezza PC che hanno configurato in Excel, la macro potrebbe non essere eseguita all’apertura della cartella di lavoro. In tali situazioni, questi colleghi riceveranno comunque gli errori di riferimento circolare.

La seconda cosa da ricordare è che l’abilitazione dell’impostazione del riferimento circolare (tramite questa macro o manualmente) influenzerà non solo i calcoli sulla cartella di lavoro, ma su qualsiasi cartella di lavoro che i tuoi colleghi potrebbero avere aperta. Questo non dovrebbe causare un grosso problema, ma è comunque una buona cosa da tenere a mente.

Puoi anche aggiungere una macro per disattivare l’impostazione del riferimento circolare quando la cartella di lavoro è chiusa. Anche questo dovrebbe essere aggiunto al modulo ThisWorkbook:

Private Sub Workbook_Close()

Application.Iteration = False End Sub

Questa macro dovrebbe effettivamente essere considerata facoltativa e potresti prendere in considerazione se vuoi davvero includerla o meno. Se i tuoi colleghi normalmente lavorano con l’impostazione di riferimento circolare abilitata, la macro Workbook_Open non interferirà con il modo in cui usano Excel. Tuttavia, se viene rilevata la macro Workbook_Close, verrà disattivata l’impostazione di riferimento circolare e potrebbe interferire con il modo in cui utilizzano altre cartelle di lavoro che richiedono riferimenti circolari.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (13532) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 e Excel in Office 365.