Created
May 15, 2017 12:56
-
-
Save all3kcis/923276e12ca3bf7de358833d394b201f to your computer and use it in GitHub Desktop.
Supprimer un mot de passe sur une feuille Excel
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Supprimer un mot de passe perdu qui protège une feuille Excel | |
2 solution :Utiliser la macro suivante ou ouvrir le fichier en tant que zip pour effectuer la manipulation à la main. | |
renomer le .xlsx en .zip, ouvrir avec Winrar , aller dans le dossier sheets, ouvrer la feuille voulu et supprimer la référence au mot de passe. | |
Sinon utiliser la macro : | |
1. | |
S'il n'y a pas l'onglet « Développeur » dans le ruban (barre d'outils), impossible d'accéder à Visual Basic Editor. Il faut donc l'afficher. | |
2. | |
Pour faire apparaître l'onglet « Développeur », il faut choisir le Bouton Office > Options Excel (un bouton en bas à droite du menu déroulant) et activer la case à cocher « Afficher l'onglet Développeur dans le ruban ». | |
3. | |
Sur le ruban choisissez l'onglet Développeur > Visual Basic (ou taper Alt+F11) | |
4. | |
Dans Visual Basic, choisir le menu Insertion > Module. | |
Oter la protection d'une feuille Excel protégée par un mot de passe avec une macro ? | |
5. | |
Copier et coller la macro ci?dessous dans le module à peine créé. | |
Sub Vire_me_la() | |
Dim a, b, c, d, e, f, g, h, i, j, k, l As Integer | |
On Error Resume Next | |
For a = 65 To 66 | |
For b = 65 To 66 | |
For c = 65 To 66 | |
For d = 65 To 66 | |
For e = 65 To 66 | |
For f = 65 To 66 | |
For g = 65 To 66 | |
For h = 65 To 66 | |
For i = 65 To 66 | |
For j = 65 To 66 | |
For k = 65 To 66 | |
For l = 32 To 126 | |
ActiveSheet.Unprotect Chr(a) & Chr(b) & Chr(c) & Chr(d) & Chr(e) & Chr(f) & Chr(g) & Chr(h) & Chr(i) & Chr(j) & Chr(k) & Chr(l) | |
If ActiveSheet.ProtectContents = False Then | |
MsgBox "La protection de la feuille a été enlevée avec succès !" & Chr(10) & Chr(10) & "Les caractères qui ont réalisé cette prouesse sont :" & Chr(10) & Chr(10) & Chr(a) & Chr(b) & Chr(c) & Chr(d) & Chr(e) & Chr(f) & Chr(g) & Chr(h) & Chr(i) & Chr(j) & Chr(k) & Chr(l), vbInformation, "C'est fait !" | |
Exit Sub | |
End If | |
Next | |
Next | |
Next | |
Next | |
Next | |
Next | |
Next | |
Next | |
Next | |
Next | |
Next | |
Next | |
End Sub | |
6. | |
Dans Visual Basic, choisir le menu Outils > Macro > puis sélectionnez la macro Vire_me_la et cliquer sur « Exécuter ». | |
7. | |
La macro enlève la protection de la feuille et affiche le mot de passe qui est parvenu à ce résultat. La macro est parfois longue à s'exécuter, mais elle fonctionne... |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment