Excel VBA Unprotect Sheet

Abbiamo un'opzione in Excel con la quale possiamo proteggere i nostri fogli e file Excel da essere cancellati, rinominati e dal salvataggio dei dati da qualsiasi altra modifica non necessaria. L'opzione si chiama Proteggi foglio e Proteggi cartella di lavoro che è presente nella sezione Modifiche nella barra dei menu Revisiona . Siamo in grado di impostare una password con la quale possiamo salvare il foglio selezionato da eventuali modifiche apportate. Ma quello che dico, questo può anche essere automatizzato usando il codice VBA. Sì, possiamo creare un codice o una macro con cui bloccare automaticamente il foglio e la cartella di lavoro. Ma questo articolo è dedicato alla non protezione del foglio.

Anche la protezione del foglio è un processo abbastanza semplice per proteggere il foglio. Per non proteggere il foglio, dobbiamo inserire la password che abbiamo usato durante il blocco di quel foglio. Per rimuovere la protezione del foglio, è sufficiente selezionare il nome del foglio di lavoro e la funzione chiamata Annulla protezione. Se questo è disponibile in VBA, allora è solo un codice di una riga. Ma se non lo è, allora dobbiamo cercare un altro modo di farlo, che vedremo negli esempi seguenti.

Come rimuovere la protezione del foglio in Excel VBA?

Impareremo come rimuovere la protezione del foglio in Excel utilizzando il codice VBA.

È possibile scaricare questo modello Excel foglio Unprotect VBA qui - Modello Excel foglio Unprotect VBA

VBA Unprotect Sheet - Esempio n. 1

Innanzitutto, vedremmo un semplice esempio per non proteggere il foglio. Per questo, seguire i passaggi seguenti:

Passaggio 1: aprire innanzitutto un modulo dalla scheda del menu Inserisci come mostrato di seguito.

Passaggio 2: scrivere ora la sottoprocedura del foglio VBA Unprotect. Oppure possiamo scegliere qualsiasi altro nome per definirlo.

Codice:

 Sottotitolo VBA_Unprotect () End Sub 

Passaggio 3: definire una variabile denominata foglio di lavoro con qualsiasi nome. Preferibilmente il nome che ricorda un foglio di lavoro come ExSheet

Codice:

 Sottotitolo VBA_Unprotect () Dim Exheet come foglio di lavoro Fine Sottotitolo 

Passaggio 4: Ora imposta quindi la variabile del foglio di lavoro definita con il nome del foglio che non vogliamo proteggere. Qui, il nome di quel foglio è Foglio1 .

Codice:

 Sottotitolo VBA_Unprotect () attenuato come foglio di lavoro Imposta foglio di lavoro = fogli di lavoro ("Foglio1") Fine sottotitoli 

Passaggio 5: ora assegnare la funzione Unprotect presente nell'elenco a discesa VBA alla variabile del foglio di lavoro ExSheet .

Codice:

 Sottotitolo VBA_Unprotect () attenuato come foglio di lavoro Imposta foglio di lavoro = fogli di lavoro ("Foglio1") ExSheet.Unprotect End Sub 

Passaggio 6: ora fornisci la password che abbiamo fornito per bloccare quel foglio. Qui, quella password è "Open1212". E questo può essere qualsiasi cosa, che dipende dalla scelta dell'utente.

Codice:

 Sottotitolo VBA_Unprotect secondario () Dim foglio come foglio di lavoro Imposta foglio = fogli di lavoro ("Foglio1") ExSheet.Unprotect Password: = "Open1212" End Sub 

Passo 7: Ora per prima cosa proteggeremo Sheet1 facendo clic sulla scheda del menu Revisiona e selezionando l'opzione Proteggi foglio .

Passaggio 8: inserisci la password desiderata e fai clic su OK per proteggere il foglio.

Passaggio 9: reinserire la password per confermare.

Passo 10: Una volta fatto, vedremo, non possiamo cambiare nulla in quel foglio anche se proviamo a farlo. Ora per rimuovere la protezione del foglio, compileremo il nostro codice scritto e lo eseguiremo.

Vedremo, una volta eseguito il nostro codice, ora siamo in grado di apportare eventuali modifiche in Sheet1 .

Passaggio 11: cosa succede se rimuoviamo o modifichiamo la riga di codice in cui abbiamo inserito la password e la facciamo fino alla funzione Unprotect come mostrato di seguito. Vediamo cosa accadrà se lo facciamo.

Codice:

 Sottotitolo VBA_Unprotect () attenuato come foglio di lavoro Imposta foglio di lavoro = fogli di lavoro ("Foglio1") ExSheet.Unprotect End Sub 

Passaggio 12: eseguire nuovamente il codice completo. Vedremo, apparirà una finestra di messaggio che chiederà di inserire la password. Inserisci qui la password che abbiamo selezionato proteggendo il foglio e fai clic su OK.

Anche con questo processo, possiamo rimuovere la protezione del foglio che vogliamo.

VBA Unprotect Sheet - Esempio # 2

Esiste un altro modo per non proteggere i fogli di lavoro. Questo è il modo più semplice e semplice per farlo. Per questo, seguire i passaggi seguenti:

Passaggio 1: scrivere la sottoprocedura per VBA Unprotect come mostrato di seguito.

Codice:

 Sottotitolo VBA_Unprotect2 () End Sub 

Passaggio 2: utilizzare la funzione Fogli di lavoro e selezionare il foglio che non si desidera proteggere. Anche in questo caso, quel foglio è Foglio1 .

Codice:

 Sottotitoli VBA_Unprotect2 () ("Foglio1") Sottotitoli 

Passaggio 3: In un modo simile a quello mostrato nell'esempio 1, utilizzeremo il comando Unprotect insieme alla password che abbiamo usato durante il blocco del foglio. In questo caso, la nostra password per la mancata protezione è uguale a " Open1212 ".

Codice:

 Sottotitoli VBA_Unprotect2 () ("Foglio1"). Password non protetta: = "Open1212" End Sub 

Ora il nostro codice è completo. Per testarlo, prima di tutto proteggi il foglio nello stesso modo in cui abbiamo fatto nell'esempio-1 ed esegui questo codice per non proteggerlo.

VBA Unprotect Sheet - Esempio n. 3

Che cosa succede se dico, possiamo ancora scrivere un codice in cui non è necessario selezionare il nome del foglio che non vogliamo proteggere. Sì, questo può essere fatto usando un loop. Per questo, seguire i passaggi seguenti:

Passo 1: Anche in questo caso aprire un modulo e scrivere la sottoprocedura del foglio VBA Unprotect come mostrato di seguito.

Codice:

 Sottotitolo VBA_Unprotect3 () End Sub 

Passaggio 2: utilizzare DIM per definire una variabile per foglio di lavoro come foglio di calcolo. È la stessa linea che abbiamo usato negli esempi precedenti.

Codice:

 Sottotitolo VBA_Unprotect3 () Dim Exheet come foglio di lavoro Fine Sottotitolo 

Passaggio 3: aprire un ciclo For-Next in cui scriveremo le condizioni del foglio non protetto.

Codice:

 Sottotitolo VBA_Unprotect3 () attenuato come foglio di lavoro per foglio secondario successivo 

Passaggio 4: Scrivi la condizione per ogni cartella di lavoro attiva aperta seleziona il foglio di lavoro attivo corrente, come mostrato di seguito.

Codice:

 Sottotitolo VBA_Unprotect3 () attenuato come foglio di lavoro per ogni foglio in ActiveWorkbook.Worksheets Foglio successivo successivo 

Passaggio 5: ora in modo simile a quello mostrato negli esempi precedenti, utilizzeremo le variabili definite insieme alla funzione Unprotect per rimuovere la protezione del foglio. Anche in questo caso, è possibile o meno utilizzare la password. Questo è un modo opzionale.

Codice:

 Sottotitolo VBA_Unprotect3 () attenuato come foglio di lavoro per ogni foglio di lavoro in ActiveWorkbook.Worksheets ExSheet.Unprotect Password: = "Open1212" Sottotitolo di fine foglio successivo 

Compilare il codice ed eseguirlo se non viene trovato alcun errore.

Questo è il modo in cui possiamo rimuovere la protezione da qualsiasi foglio di lavoro corrente aperto senza nemmeno selezionare il nome e la sequenza di quello. Questo codice considererà automaticamente quel foglio che è attualmente selezionato e aperto.

Pro di Excel VBA Unprotect Sheet

  • I processi e gli esempi sopra indicati sono i più facili da applicare.
  • È possibile rimuovere la protezione del foglio in entrambi i modi, fornendo la password stessa nel codice o senza fornire la password.
  • Funziona nello stesso modo in cui non proteggiamo manualmente il foglio.

Cose da ricordare

  • Poiché il processo è abbastanza semplice da implementare, non è possibile che l'automazione non comporti alcun miglioramento.
  • Possiamo cambiare la password ogni volta che ripetiamo il processo di protezione e non protezione del foglio.
  • Possiamo selezionare il nome del foglio o la sequenza del foglio che non vogliamo proteggere.
  • E una volta fatto, salva il codice in Macro abilita il foglio di lavoro Excel per proteggere il codice VBA che si perde.

Articoli consigliati

Questa è una guida a VBA Unprotect Sheet. Qui discutiamo come rimuovere la protezione del foglio in Excel usando il codice VBA insieme ad esempi pratici e modello Excel scaricabile. Puoi anche consultare i nostri altri articoli suggeriti:

  1. Variabile pubblica VBA (esempi)
  2. Numero formato VBA con funzione
  3. Variante VBA con tipi di dati
  4. VBA randomizza | Modelli di Excel
  5. VBA Environ

Categoria: