Come trovare le cartelle di lavoro contenenti macro

L’azienda di Riccardo, come molte altre, utilizza molto Excel. In effetti, hanno migliaia e migliaia di cartelle di lavoro di Excel che hanno raccolto nel corso degli anni. Riccardo ha bisogno di un modo per scoprire quali di queste cartelle di lavoro contengono macro VBA, senza la necessità di aprire e ispezionare ciascuna cartella di lavoro individualmente. Si chiede se esista un modo semplice per farlo.

Un modo piuttosto semplicistico per trovare tutte le cartelle di lavoro contenenti macro è cercare semplicemente tutti i file che utilizzano le estensioni XLSM o XLSB. Le cartelle di lavoro che contengono macro devono essere archiviate in file che utilizzano queste estensioni. Sebbene non sia infallibile al 100%, è un buon punto di partenza.

Puoi anche utilizzare le funzionalità di ricerca di Windows (al di fuori di Excel) e cercare qualsiasi file che contenga il testo “End Sub” o “End Function“. Ciò identificherà rapidamente qualsiasi potenziale cartella di lavoro candidata, poiché qualsiasi procedura VBA deve utilizzare una di queste due istruzioni alla fine (tuttavia, non funzionerà con i file XLSB, poiché il codice macro in essi è archiviato in un formato binario).

Se stai utilizzando cartelle di lavoro legacy (quelle sviluppate utilizzando il formato file di Excel 2003), devi effettivamente esaminare ciascuna cartella di lavoro. Questo può essere fatto a livello di codice, il che significa che potresti avere una macro che apre ogni cartella di lavoro in una directory e la esamina per vedere se sono presenti macro al suo interno.

Ad esempio, potresti creare una macro che passi attraverso ciascuno dei file in una directory e determini se il file è una cartella di lavoro di Excel. Può quindi aprire il file e verificare se contiene un progetto VBA al suo interno.

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

ABBONATI

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

 

In questo esempio viene utilizzata la proprietà HasVBProject (introdotta nel modello a oggetti di Excel in Excel 2007) per determinare se il file contiene macro o meno. Al termine, la macro visualizza una finestra di messaggio che elenca i fogli di lavoro contenenti macro.

 

 

 

Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Ti è stato utile?