Feuille de déprotection VBA Excel

Nous avons une option dans Excel par laquelle nous pouvons protéger nos feuilles et fichiers Excel contre la suppression, le changement de nom et la sauvegarde des données de toute autre modification non requise. L'option est appelée Protéger la feuille et Protéger le classeur qui se trouve dans la section Modifications sous le ruban du menu Révision . Nous pouvons définir un mot de passe par lequel nous pouvons enregistrer la feuille sélectionnée de toutes les modifications apportées. Mais ce que je dis, cela peut également être automatisé en utilisant le code VBA. Oui, nous pouvons créer un code ou une macro permettant de verrouiller automatiquement la feuille et le classeur. Mais cet article concerne la déprotection de la feuille.

Déprotéger la feuille est également un processus assez simple pour protéger la feuille. Pour déprotéger la feuille, nous devons saisir le mot de passe que nous avons utilisé lors du verrouillage de cette feuille. Pour déprotéger la feuille, il suffit de sélectionner le nom de la feuille de calcul et la fonction appelée Déprotéger . Si cela est disponible dans VBA, il s'agit simplement d'un code à une ligne. Mais si ce n'est pas le cas, alors nous devons chercher une autre façon de le faire que nous verrons dans les exemples ci-dessous.

Comment déprotéger une feuille dans Excel VBA?

Nous allons apprendre à déprotéger une feuille dans Excel à l'aide du code VBA.

Vous pouvez télécharger ce modèle Excel de feuille de déprotection VBA ici - Modèle Excel de feuille de déprotection VBA

Feuille de déprotection VBA - Exemple # 1

Tout d'abord, nous verrions un exemple simple pour déprotéger la feuille. Pour cela, suivez les étapes ci-dessous:

Étape 1: ouvrez d'abord un module à partir de l'onglet du menu Insertion, comme illustré ci-dessous.

Étape 2: Maintenant, écrivez la sous-procédure de la feuille VBA Unprotect. Ou nous pouvons choisir n'importe quel autre nom pour le définir.

Code:

 Sub VBA_Unprotect () End Sub 

Étape 3: Définissez une variable appelée Feuille de calcul par n'importe quel nom. De préférence, le nom qui ressemble à une feuille de calcul comme ExSheet

Code:

 Sub VBA_Unprotect () Dim ExSheet As Sub Sheet End Sub 

Étape 4: Maintenant, définissez la variable de feuille de calcul définie avec le nom de la feuille que nous voulons déprotéger. Ici, le nom de cette feuille est Sheet1 .

Code:

 Sub VBA_Unprotect () Dim ExSheet As Set Worksheet Set ExSheet = Worksheets ("Sheet1") End Sub 

Étape 5: Attribuez maintenant la fonction Unprotect qui se trouve dans la liste déroulante VBA à la variable de feuille de calcul ExSheet .

Code:

 Sous VBA_Unprotect () Dim ExSheet en tant que jeu de feuilles de calcul ExSheet = Worksheets ("Sheet1") ExSheet.Unprotect End Sub 

Étape 6: Donnez maintenant le mot de passe que nous avons donné pour verrouiller cette feuille. Ici, ce mot de passe est «Open1212». Et cela peut être n'importe quoi, selon le choix de l'utilisateur.

Code:

 Sous VBA_Unprotect () Dim ExSheet en tant que jeu de feuilles de calcul ExSheet = Worksheets ("Sheet1") ExSheet.Unprotect Password: = "Open1212" End Sub 

Étape 7: Maintenant, nous allons d'abord protéger Sheet1 en cliquant sur l'onglet du menu Review et en sélectionnant l'option Protect Sheet .

Étape 8: Entrez le mot de passe que nous voulons et cliquez sur OK pour protéger la feuille.

Étape 9: ressaisissez le mot de passe pour le confirmer.

Étape 10: Une fois terminé, nous verrons, nous ne pouvons rien changer dans cette feuille même si nous essayons de le faire. Maintenant, pour déprotéger la feuille, nous allons compiler notre code écrit et l'exécuter.

Nous verrons, une fois notre code exécuté, nous pouvons maintenant apporter des modifications dans Sheet1 .

Étape 11: que se passe-t-il si nous supprimons ou modifions la ligne de code où nous avons inséré le mot de passe et le faisons jusqu'à la fonction Unprotect comme indiqué ci-dessous. Voyons ce qui se passera si nous le faisons.

Code:

 Sous VBA_Unprotect () Dim ExSheet en tant que jeu de feuilles de calcul ExSheet = Worksheets ("Sheet1") ExSheet.Unprotect End Sub 

Étape 12: Maintenant, exécutez à nouveau le code complet. Nous verrons, une boîte de message apparaîtra qui vous demandera d'entrer le mot de passe. Saisissez ici le mot de passe que nous avons sélectionné tout en protégeant la feuille et cliquez sur Ok.

Avec ce processus également, nous pouvons déprotéger la feuille que nous voulons.

Feuille de déprotection VBA - Exemple # 2

Il existe une autre façon de déprotéger les feuilles de calcul. C'est la façon la plus simple et la plus simple de le faire. Pour cela, suivez les étapes ci-dessous:

Étape 1: Écrivez la sous-procédure pour VBA Unprotect comme indiqué ci-dessous.

Code:

 Sub VBA_Unprotect2 () End Sub 

Étape 2: utilisez la fonction Feuilles de calcul et sélectionnez la feuille que nous voulons déprotéger. Là encore, cette feuille est Sheet1 .

Code:

 Sub VBA_Unprotect2 () Feuilles de calcul ("Sheet1") End Sub 

Étape 3: De la même manière que dans l'exemple-1, nous utiliserons la commande Déprotéger avec le mot de passe que nous avons utilisé lors du verrouillage de la feuille. Ici, notre mot de passe pour la déprotection est également le même que « Open1212 ».

Code:

 Sub VBA_Unprotect2 () Worksheets ("Sheet1"). Unprotect Password: = "Open1212" End Sub 

Maintenant, notre code est terminé. Pour tester cela, commencez par protéger la feuille de la même manière que dans l'exemple-1 et exécutez ce code pour le déprotéger.

Feuille de déprotection VBA - Exemple # 3

Et si je dis, nous pouvons à nouveau écrire un code où nous n'avons pas besoin de sélectionner le nom de la feuille que nous voulons déprotéger. Oui, cela peut être fait en utilisant une boucle. Pour cela, suivez les étapes ci-dessous:

Étape 1: Encore une fois pour cela, ouvrez un module et écrivez la sous-procédure de la feuille VBA Unprotect comme indiqué ci-dessous.

Code:

 Sub VBA_Unprotect3 () End Sub 

Étape 2: utilisez DIM pour définir une variable pour la feuille de calcul en tant que feuille Exsheet. C'est la même ligne que nous avons utilisée dans les exemples ci-dessus.

Code:

 Sub VBA_Unprotect3 () Dim ExSheet As Sub Sheet End End 

Étape 3: Ouvrez une boucle For-Next où nous écrirons les conditions de la feuille non protégée.

Code:

 Sub VBA_Unprotect3 () Dim ExSheet As Worksheet For Next ExSheet End Sub 

Étape 4: écrire la condition pour chaque classeur actif ouvert sélectionne la feuille de calcul active actuelle, comme indiqué ci-dessous.

Code:

 Sub VBA_Unprotect3 () Dim ExSheet en tant que feuille de calcul pour chaque ExSheet dans ActiveWorkbook.Worksheets Next ExSheet End Sub 

Étape 5: Maintenant, d'une manière similaire à celle des exemples ci-dessus, nous allons utiliser des variables définies avec la fonction Unprotect pour déprotéger la feuille. Ici aussi, nous pouvons ou non utiliser le mot de passe. Il s'agit d'un moyen facultatif.

Code:

 Sous VBA_Unprotect3 () Dim ExSheet en tant que feuille de calcul pour chaque ExSheet dans ActiveWorkbook.Worksheets ExSheet.Unprotect Password: = "Open1212" Next ExSheet End Sub 

Compilez le code et exécutez si aucune erreur n'a été trouvée.

C'est ainsi que nous pouvons déprotéger n'importe quelle feuille de calcul actuelle ouverte sans même en sélectionner le nom et la séquence. Ce code considérera automatiquement la feuille actuellement sélectionnée et ouverte.

Avantages de la feuille de déprotection d'Excel VBA

  • Les processus et exemples ci-dessus sont les plus faciles à appliquer.
  • Nous pouvons déprotéger la feuille des deux manières, en donnant le mot de passe lui-même dans le code ou sans donner le mot de passe.
  • Cela fonctionne de la même manière que nous déprotégons manuellement la feuille.

Choses dont il faut se rappeler

  • Comme le processus est assez facile à implémenter, il ne peut y avoir aucune amélioration en automatisant.
  • Nous pouvons changer le mot de passe à chaque fois que nous refaisons le processus de protection et de déprotection de la feuille.
  • Nous pouvons sélectionner le nom de la feuille ou la séquence de la feuille que nous voulons déprotéger.
  • Et une fois cela fait, enregistrez le code dans Macro enable excel worksheet pour protéger le code VBA contre la perte.

Articles recommandés

Ceci est un guide de la feuille de déprotection VBA. Nous expliquons ici comment déprotéger une feuille dans Excel à l'aide du code VBA ainsi que des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. Variable publique VBA (exemples)
  2. Numéro de format VBA avec fonction
  3. Variante VBA avec types de données
  4. VBA Randomize | Modèles Excel
  5. VBA Environ

Catégorie: