Esclusione di un componente aggiuntivo specifico all’avvio (Microsoft Excel)
Peter ha chiesto se esiste un modo per specificare, all’avvio di Excel, che un particolare componente aggiuntivo non deve essere caricato. Il caricamento del componente aggiuntivo che ha in mente richiede molto tempo e non ne ha sempre bisogno. La disabilitazione del componente aggiuntivo aiuterebbe ad avviare Excel più rapidamente per quelle istanze quando non era necessario.
Sfortunatamente, c’è poco da fare per disabilitare i componenti aggiuntivi all’avvio perché nessuna cartella di lavoro particolare è già aperta. (I componenti aggiuntivi vengono caricati prima di qualsiasi cartella di lavoro.) Tuttavia, è possibile provare un paio di cose.
La prima cosa è che puoi creare il tuo add-in che non fa altro che chiedere se il grande add-in deve essere caricato o meno.
A seconda della risposta dell’utente, il componente aggiuntivo potrebbe quindi essere caricato utilizzando la seguente riga di codice:
AddIns("Big Add-in").Installed = True
Ovviamente, dovrai sostituire “Big Add-in” con il nome dell’effettivo add-in da caricare. Se l’utente non desidera che il componente aggiuntivo venga caricato, è sufficiente saltare la riga di codice. Nell’evento Close per il tuo piccolo componente aggiuntivo puoi quindi aggiungere una riga come la seguente che scarica il grande componente aggiuntivo:
AddIns("Big Add-in").Installed = False
In questo modo, il componente aggiuntivo viene aggiunto solo se l’utente dice che è OK da aggiungere e quindi viene sempre scaricato alla fine della sessione di Excel.
Un altro approccio consiste nel non caricare mai il componente aggiuntivo di grandi dimensioni, ma inserire una routine nel file Personal.xls che offre all’utente la possibilità di caricare il componente aggiuntivo.
Quanto segue potrebbe essere aggiunto all’evento Workbook_Open in Personal.xls:
Private Sub Workbook_Open() With Application .OnKey "{TAB}", "InstallMyAddIn" .OnTime (Now + TimeValue("0:00:05")), "DisableTABProc" End With End Sub
Lo scopo di questa macro è dare all’utente un periodo di tempo, in questo caso cinque secondi, per premere il tasto Tab in modo che venga caricato il componente aggiuntivo di grandi dimensioni. Il metodo .OnKey esegue la routine di installazione, se si preme Tab, e la routine .OnTime avvia un timer che esegue la routine di disabilitazione una volta trascorsi i cinque secondi. Notare che questa macro chiama due routine; questi possono essere inseriti in un modulo normale per Personal.xls.
Sub InstallMyAddIn() AddIns("Big Add-in").Installed = True DisableTABProc End Sub
Sub DisableTABProc() Application.OnKey "{TAB}", "" End Sub
Ovviamente, dovrai aggiungere del codice per l’evento Workbook_Close di Personal.xls, in questo caso per scaricare l’add-in:
Private Sub Workbook_Close() AddIns("Big Add-in").Installed = False End Sub
Se preferisci non utilizzare le macro, puoi sempre spostare il grande componente aggiuntivo dalla posizione della directory o rinominare il componente aggiuntivo prima di avviare Excel. Se Excel non riesce a individuare il componente aggiuntivo, continua a caricarsi senza caricarlo.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (2383) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: