Protezione cartella di lavoro VBA (protezione/rimozione password)

Excel ti consente di proteggere le tue cartelle di lavoro di Excel dalle modifiche. Questo tutorial ti mostrerà come proteggere o rimuovere la protezione della struttura della cartella di lavoro utilizzando VBA.

Protezione cartella di lavoro VBA

VBA Workbook Protection consente di bloccare la struttura della cartella di lavoro. Quando una cartella di lavoro è protetta, gli utenti non saranno in grado di aggiungere, eliminare, nascondere/visualizzare o proteggere/rimuovere la protezione dei fogli di lavoro. Se stai creando un modello, probabilmente vorrai attivare la protezione della cartella di lavoro per impedire agli utenti (o a te!) di eliminare accidentalmente i fogli di lavoro.

UnProtect cartella di lavoro VBA

Per rimuovere la protezione di una cartella di lavoro, usa semplicemente la seguente riga di codice:

1 Cartelle di lavoro("Libro1"). Rimuovi protezione

Nota: questo codice funzionerà solo se la cartella di lavoro era protetta privo di una password. Se era protetto con una password, è necessario inserire anche la password per deproteggerlo:

Annulla protezione cartella di lavoro con password

Questa riga di codice rimuoverà la protezione di una cartella di lavoro che è stata protetta con una password:

1 Cartelle di lavoro("Libro1").Unprotect Password:="password"

oppure puoi omettere Password:=

1 Cartelle di lavoro ("Libro1"). Rimuovi protezione "password"

Non proteggere questa cartella di lavoro

Questo codice non proteggerà ThisWorkbook (ThisWorkbook è la cartella di lavoro in cui è memorizzato il codice in esecuzione. Non cambierà mai).

1 ThisWorkbook.Unprotect

o rimuovere la protezione di ThisWorkbook con una password:

1 ThisWorkbook.Unprotect "password"

UnProtect ActiveWorkbook

Questo codice annullerà la protezione di ActiveWorbook.

1 ActiveWorkbook.Unprotect

o rimuovere la protezione di ActiveWorkbook con una password:

1 ActiveWorkbook.Unprotect "password"

Annulla protezione di tutte le cartelle di lavoro aperte

Questo codice rimuoverà la protezione di tutte le cartelle di lavoro aperte:

12345678 Sub UnprotectAllOpenWorkbooks()Dim wb come cartella di lavoroPer ogni wb nelle cartelle di lavorowb.Unprotectwb successivoFine sottotitolo

Cartella di lavoro UnProtect - Senza conoscere la password

Se è necessario rimuovere la protezione di una cartella di lavoro senza conoscere la password, sono disponibili diversi componenti aggiuntivi per aiutarti. Consiglierei Ribbon Commander.

Annulla protezione di tutti i fogli nella cartella di lavoro

Dopo aver rimosso la protezione di una cartella di lavoro, potresti anche voler rimuovere la protezione di tutti i fogli nella cartella di lavoro. Ecco una procedura che rimuoverà la protezione di tutti i fogli:

12345678 Sub UnProtectWorkbookAndAllSheets()Dim ws come foglio di lavoroActiveWorkbook.UnprotectPer ogni ws nei fogli di lavorows.UnprotectProssimoFine sottotitolo

Proteggi cartella di lavoro

È possibile proteggere le strutture delle cartelle di lavoro nello stesso modo in cui si annulla la protezione.

Proteggi cartella di lavoro senza password

Questa riga di codice proteggerà una cartella di lavoro (nessuna password)

1 Cartelle di lavoro("Libro1").Proteggi

Nota: applicherò spesso la protezione della cartella di lavoro senza password, semplicemente per prevenire accidentale modifiche alle cartelle di lavoro.

Proteggi la cartella di lavoro con la password

Questo codice proteggerà la struttura della cartella di lavoro (con una password)

1 Cartelle di lavoro("Libro1").Proteggi "password"

o:

1 Cartelle di lavoro("Libro1").Proteggi password:="password"

Proteggi file Excel con password

Invece della protezione della cartella di lavoro, potresti voler proteggere con password un intero file Excel. Per farlo utilizzando VBA, salva come cartella di lavoro con una password:

1 Cartelle di lavoro("Libro1").Salva con nome "password"

Esempi di cartelle di lavoro Proteggi/Rimuovi protezione

Scopri tutti i fogli di lavoro nella cartella di lavoro protetta

Questa procedura rimuoverà la protezione di una cartella di lavoro, nasconderà tutti i fogli di lavoro e proteggerà nuovamente la cartella di lavoro

12345678910 Sub UnprotectWB_Unhide_All_Sheets()Dim ws come foglio di lavoroActiveWorkbook.UnprotectPer ogni ws nei fogli di lavorows.Visible = xlSheetVisibleProssimoActiveWorkbook.ProteggiFine sottotitolo

Proteggi la cartella di lavoro e tutti i fogli

Questa procedura proteggerà tutti i fogli di lavoro in una cartella di lavoro e quindi proteggerà la cartella di lavoro:

1234567891011 Sub ProtectWB_Protect_All_Sheets()Dim ws come foglio di lavoroActiveWorkbook.UnprotectPer ogni ws nei fogli di lavorow.ProteggiProssimoActiveWorkbook.ProteggiFine sottotitolo

Puoi anche aggiungere la protezione con password:

1234567891011 Sub ProtectWB_Protect_All_Sheets_Pswrd()Dim ws come foglio di lavoroActiveWorkbook.Unprotect "password"Per ogni ws nei fogli di lavorow.Proteggi "password"ProssimoActiveWorkbook.Proteggi "password"Fine sottotitolo
wave wave wave wave wave