Foglio di protezione VBA di Excel

La protezione di un foglio di lavoro è un'attività importante per coloro che lavorano su Microsoft Excel molto frequentemente. È un compito necessario per proteggere il foglio da eventuali modifiche da parte di altri utenti. Supponiamo che tu stia inviando un rapporto alla direzione e quindi alla direzione consapevolmente o per errore cambi i parametri o i valori attraverso il rapporto. Diventa frenetico identificare il bug e allo stesso tempo la rielaborazione è qualcosa che ti consuma tempo. Per ovviare a questo problema, è sempre buona norma proteggere un / i foglio / i per la modifica mediante una password. Questa opzione ti aiuta non consentendo a un utente di apportare modifiche all'interno del / i foglio / i. È inoltre possibile condividere la password con la persona prevista e autorizzata ad apportare le modifiche. Sebbene Excel abbia l'opzione Proteggi foglio di lavoro al suo interno tramite la scheda Revisione presente nella barra multifunzione di Excel, diventa frenetico quando hai più di un foglio da proteggere. Consumerà molto del tuo tempo proteggendo ogni foglio uno per uno. Invece, è buona norma scrivere un codice VBA in grado di proteggere fogli singoli o multipli dalla cartella di lavoro per la modifica.

Sintassi del foglio VBA Protect

Questa funzione VBA integrata associata al foglio di lavoro consente di proteggere il foglio con l'aiuto della password. La sintassi per la funzione VBA Protect Sheet è la seguente:

Tutti i parametri sono opzionali in questa funzione che puoi indovinare attraverso le parentesi quadre menzionate per ciascuno di essi.

  • Password: specifica la password per il foglio. Se non fornito, il foglio sarà protetto senza password e l'utente potrà modificarlo senza che sia richiesta una password.
  • DrawingObjects: argomenti facoltativi che consentono di proteggere diverse forme del foglio di lavoro. Accetta valori booleani. L'impostazione predefinita è FALSO.
  • Contenuto: argomento facoltativo. Protegge tutti gli oggetti. Per impostazione predefinita, i valori sono impostati su TRUE.
  • Scenari: protegge tutti i diversi scenari. Il valore predefinito è impostato su TRUE.
  • UserInterfaceOnly: protegge l'interfaccia utente ma non le macro. Il valore predefinito è TRUE se la macro viene ignorata, così come l'interfaccia utente sarà protetta.
  • AllowFormattingCells: il valore predefinito è impostato su FALSE a causa del quale l'utente non può formattare le celle del foglio. Se impostato su TRUE, l'utente può formattare le celle dal foglio.
  • AllowInsertingColumns: valore predefinito impostato su FALSE. Se impostato su TRUE, l'utente può inserire una colonna nel foglio.
  • AllowInsertingRows: il valore predefinito è impostato su FALSE. Se impostato su TRUE, l'utente può inserire righe nel foglio.
  • AllowInsertingHyperlinks: il valore predefinito è impostato su FALSE. Se impostato su TRUE, l'utente può inserire collegamenti ipertestuali nel foglio.
  • AllowDeletingColumns: il valore predefinito è impostato su FALSE. Se impostato su TRUE, l'utente può eliminare qualsiasi colonna dal foglio.
  • AllowDeletingRows: il valore predefinito è impostato su FALSE. Se impostato su TRUE, l'utente può eliminare qualsiasi numero di righe dal foglio.
  • AllowSorting: il valore predefinito è impostato su FALSE. Se impostato su TRUE, l'utente può ordinare i dati presenti nel foglio.
  • AllowFiltering: il valore predefinito è impostato su FALSE. Se impostato su TRUE, l'utente può filtrare i dati presenti nel foglio.
  • AllowUsingPivotTables: il valore predefinito è impostato su FALSE. Se impostato su TRUE, l'utente può utilizzare e modificare le tabelle pivot.

Come proteggere il foglio in Excel VBA?

Di seguito sono riportati i diversi esempi per proteggere il foglio in Excel utilizzando VBA Protect.

Puoi scaricare questo modello di VBA Proteggi foglio Excel qui - Modello di VBA Proteggi foglio Excel

VBA Protect Sheet - Esempio n. 1

Supponiamo di avere un foglio denominato "Esempio 1" in una cartella di lavoro denominata "Foglio VBA Protect". Vogliamo che questo foglio sia protetto con una password. Per questo, seguire i passaggi seguenti:

Passaggio 1: inserire un nuovo modulo in Visual Basic Editor (VBE). Fai clic su Inserisci > seleziona Modulo .

Passaggio 2: definire una nuova procedura secondaria all'interno del modulo.

Codice:

 Esempio secondario_1 () Fine sottotitolo 

Step 3: Ora dobbiamo usare la funzione Protect che può essere applicata su un oggetto chiamato Foglio di lavoro. Avviare il codice con l'oggetto Fogli di lavoro e digitare il nome di un foglio di lavoro tra parentesi che si desidera proteggere.

Codice:

 Sub esempio_1 () fogli di lavoro ("esempio 1") Fine sub 

Passo 4: Ora, inserisci un punto dopo le parentesi chiuse e usa la parola chiave Protect che avvia il processo di protezione del foglio chiamato " Esempio 1 ".

Codice:

 Sottotitolo_1 () Fogli di lavoro ("Esempio 1"). Sottotitolo protezione fine 

Puoi fermarti qui mentre proteggi un foglio. Poiché tutti gli argomenti sono opzionali, il foglio sarà comunque protetto ma non chiederà all'utente di inserire la password prima della modifica e sarà lo stesso di un foglio non protetto. Sicuramente non lo vorresti in questo modo. Pertanto, aggiungere una password complessa per proteggere questo foglio nel passaggio successivo.

Passaggio 5: immettere la parola chiave Password e utilizzare una password complessa per proteggere questo foglio.

Codice:

 Sottotitolo_1 () Fogli di lavoro ("Esempio 1"). Proteggi password: = " " Fine Sottotitoli 

Useremo solo il primo argomento della funzione che si chiama come password e per il resto tutti gli argomenti andremo con i valori predefiniti.

Passo 6: Ecco fatto, puoi eseguire questo codice premendo il pulsante F5 o Esegui e puoi vedere che il file è ora protetto e chiederà all'utente la password non appena tenta di modificare una delle celle.

Ecco come proteggiamo un foglio usando la funzione VBA Protect.

VBA Protect Sheet - Esempio n. 2

Ora, vogliamo proteggere tutti i fogli presenti in una cartella di lavoro. Per questo, seguire i passaggi seguenti:

Passaggio 1: definire una procedura secondaria nel modulo.

Codice:

 Sub Esempio_2 () End Sub 

Passaggio 2: definire una nuova variabile come foglio di lavoro utilizzando Dim.

Codice:

 Sub Esempio_2 () Dim wrk_sht Come foglio di lavoro Fine Sottotitolo 

Passaggio 3: avviare un ciclo For. Questo ciclo dovrebbe essere eseguito fino all'ultimo foglio di lavoro della cartella di lavoro attiva.

Codice:

 Sub Esempio_2 () Dim wrk_sht Come foglio di lavoro per ogni wrk_sht In ActiveWorkbook.Worksheets End Sub 

Questa riga di codice seleziona ciascun foglio di lavoro della cartella di lavoro attiva e lo memorizza nella variabile wrk_sht per ogni iterazione del ciclo. Il ciclo termina non appena l'ultimo foglio della cartella di lavoro viene selezionato e memorizzato nella variabile wrk_sht. Dobbiamo definire un'operazione per questo ciclo. Sicuramente proteggerà il foglio usando una password.

Passaggio 4: ora, utilizzare la funzione Proteggi per proteggere i fogli memorizzati nella variabile wrk_sht per ogni iterazione del ciclo For.

Codice:

 Sub Esempio_2 () Dim wrk_sht Come foglio di lavoro per ogni wrk_sht In ActiveWorkbook.Worksheets wrk_sht.Protect Password: = " " End Sub 

Passaggio 5: utilizzare l'istruzione Next, consente l'esecuzione del ciclo fino a quando ciascun foglio di lavoro non viene protetto.

Codice:

 Sottotitolo Esempio_2 () Dim wrk_sht Come foglio di lavoro per ogni wrk_sht In ActiveWorkbook.Worksheets wrk_sht.Protect Password: = " " Sottotitolo successivo 

Se si esegue questo codice, ogni foglio di lavoro della cartella di lavoro attiva sarà protetto da password e sarà necessario inserirlo ogni volta che si desidera modificare i fogli.

Cose da ricordare

  • Si consiglia di utilizzare una password mentre si protegge un foglio. Altrimenti, all'utente non verrà richiesto di inserire una password e potrà modificare direttamente il file anche se è stato protetto.
  • Si consiglia di ricordare la password. Altrimenti dimenticare lo stesso non ti permetterà mai di modificare il file. Potrebbe essere necessario passare attraverso i vari metodi se si perde la password e tali metodi non rientrano nell'ambito di questo articolo.

Articoli consigliati

Questa è una guida al foglio VBA Protect. Qui discutiamo come proteggere o bloccare i fogli usando la funzione VBA Protect in Excel insieme ad esempi pratici e template Excel scaricabili. Puoi anche consultare i nostri altri articoli suggeriti:

  1. Come rinominare il foglio in Excel VBA?
  2. I passaggi per rimuovere la protezione del foglio in Excel
  3. Foglio di attivazione VBA (esempi con modello Excel)
  4. Come copiare un foglio Excel?

Categoria: