P’tit crack, pirate !
Aujourd'hui, ça pédale dans la semoule, TheBoss ayant trouvé une erreur dans un document Microsoft Excel.
Bien sûr, Muchmuch est sollicité pour régler le problème.
Mais, il se trouve que la feuille est protégée contre les modifications, par le menu "Révision" => "Protection".
Mot de passe perdu (lol)
Muchmuch s'attèle à ôter la protection de la feuille, mais voilà t'y pas que Microsoft Excel lui réclame un mot de passe.
Évidemment, le collègue fortiche en informatique qui a réalisé ce tour de cochon s'est évanoui dans la nature depuis longtemps.
Des recettes toutes faites
OpenOffice/LibreOffice
Encore une fois, les suites gratuites concurrentes, volent au secours de Microsoft.
À croire qu'elles ont été créées pour servir de SAV à Microsoft !
Comme nous sommes sur un site de tutoriels, voici la marche à suivre.
Cherchez dans un moteur de recherche des expressions comme "protection Excel OpenOffice".
Logiciels dédiés
Ils existent plusieurs logiciels.
Certains sont payants et il existe quelques solutions gratuites comme ici.
Ils t'ont volé ta recette !
Un petit gars, à créer une macro-commande.
L'auteur est inconnu, mais son code est largement diffusé sur Internet comme ici pour les "pros" d’Excel :
Sub PasswordBreaker() 'Author unknown Dim i As Integer, j As Integer, k As Integer Dim l As Integer, m As Integer, n As Integer Dim i1 As Integer, i2 As Integer, i3 As Integer Dim i4 As Integer, i5 As Integer, i6 As Integer On Error Resume Next For i = 65 To 66: For j = 65 To 66: For k = 65 To 66 For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66 For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66 For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126 ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _ Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _ Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) If ActiveSheet.ProtectContents = False Then MsgBox "One usable password is " & Chr(i) & Chr(j) & _ Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _ Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) ActiveWorkbook.Sheets(1).Select Range("a1").FormulaR1C1 = Chr(i) & Chr(j) & _ Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _ Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) Exit Sub End If Next: Next: Next: Next: Next: Next Next: Next: Next: Next: Next: Next End Sub
Il serait bien possible que beaucoup de solutions payantes utilisent sa recette.
Recette maison
Comme ces solutions ne sont pas applicables, avec la bonté qui me caractérise (et une facture proportionnelle à l'urgence de la situation), je propose mes services à Muchmuch.
Limitation
Si le fichier est crypté, rendez votre tablier. Le secret de fabrication est bien gardé et notre recette ne fonctionnera pas.
Nos ingrédients
Version de Microsoft Excel
Cette recette a été testée et approuvée pour les versions 2007 et 2010.
Fichier ".ZIP"
Il est nécessaire de posséder un logiciel capable de traiter les archives ".ZIP".
Nous évitons la fonction intégrée à Windows.
C'est de la daube suffisante pour une cure d'amaigrissement, mais paradoxalement, trop légère pour notre besoin.
Je suis un peu mauvaise langue (de bœuf) mais c'est un régal de mettre en boite une daube.
J'ai choisi 7Zip qui est gratuit, mais tout autre fera l'affaire.
Explorateur Windows
Vous devez savoir gérer vos fichiers et utiliser l'explorateur Windows.
Comme nous sommes sur un site de tutoriels, voici la marche à suivre.
Cherchez dans un moteur de recherche "explorateur Windows".
Bloc-notes
Celui de Windows bien que frustre est suffisant.
Préparation
Il serait sage de travailler sur une copie de votre fichier. Enfin ! Ça c'est vous qui voyez.
Extension en .zip
Tout d'abord, changeons l'extension du fichier. Pour ce faire encore faut-il les voir.
Comme nous sommes sur un site de tutoriels, voici la marche à suivre.
Cherchez où vous voulez "Afficher les extensions de fichiers".
Changer ensuite l'extension ".XLSX" par ".ZIP".
Monsieur râle, mais confirmez, on ne va pas se laisser embêter par un "PC (Petit Con)" quand même !
Exécution
Ouvrir l'archive
Avec la dextérité d’un maitre artisan, utilisez le bouton droit de la souris sur le fichier ".ZIP".
Sélectionnez dans le menu "7Zip", l’option "Ouvrir".
Extraire la/les feuilles concernées
Une fois l'archive ouverte et sous vos yeux ébahis et stupéfaits, accédez aux arcanes d'un fichier Microsoft Excel.
Allez dans le dossier xl\worksheets à l'aide d'un double-clic sur son nom.
- Sheet1.xml est la première feuille du classeur ;
- Sheet2.xml, comme de bien entendu c'est la seconde feuille du classeur.
Ne me demandez pas ce qu'est "Sheet3.xml", je n'en ai pas la moindre idée, n'ayant que 2 feuilles dans le classeur.
Précisions
Soulignons la date de création de ces feuilles – 1980-01-01 00:00 (01 janvier 1980 00:00).
Mazette, faire travailler des ingénieurs un soir de réveillon, tu m'étonnes que leurs logiciels soient si chers !
Bel exemple de mises à jour régulières 🙂
Extraire les feuilles
Glisser la ou les feuilles de l'archive à modifier dans un dossier quelconque.
Vous pouvez aussi utiliser le menu "Extraire".
Je ne vous le conseille pas, c'est plus long, et ça fait moins "pro".
Ouvrir le fichier .XML
Les fichiers ".XML", sont des fichiers texte. Vous pouvez donc les ouvrir avec le Bloc-notes de Windows.
Ne faites pas un double-clic, il y a des chances que votre fichier s'ouvre avec votre navigateur Internet et il ne sera pas modifiable.
Utilisez une autre technique comme lancer le Bloc-notes (pas trop fort, il ne reviendrait pas) et ensuite ouvrir le fichier.
Vous pouvez aussi utiliser le bouton droit sur le fichier et choisir l'option "Ouvrir avec...".
Rechercher le mot de passe
Dans le Bloc-notes, direction le menu "Édition" => "Rechercher...".
Dans la boite de recherche saisissez le terme "password".
Votre mot de passe se trouve entre guillemets après la chaine "password =".
Ce n'est pas votre mot de passe ?
Dans le fichier ".XML", votre mot de passe est crypté. Ainsi le mot de passe "123" produit la chaine "CF7A".
Logique d’un informaticien
Ils se sont cassé L'O.S. à faire une fonction de cryptage du mot de passe, mais on peut le supprimer à loisirs.
Vous comprenez maintenant, pourquoi comprendre un informaticien est incompréhensible ?
Supprimer le mot de passe
Il vous reste à supprimer la valeur entre guillemets.
Il faudra toujours ôter la protection, mais il n'y aura plus de mot de passe.
Il est aussi possible de supprimer tout ce qui est entre les symboles inférieur [<] et supérieur [>].
Pour votre culture sachez que l'on appelle ce principe une balise.
Avec cette manipulation, il n'y aura même plus à enlever la protection.
Des changements à partir de 2013
Les gens de Microsoft on du lire cet article ainsi, certains utilisateurs m'ont avertis que cette astuce ne fonctionnait plus à partir de la version 2013.
La procédure est inchangée, c'est la chaine à supprimer qui diffère.
Il faut rechercher le texte sheetprotection et supprimer jusqu'à SelectlLockedcells="1".
N'oubliez pas d'enlever aussi la balise de début (symbole inférieur <) et celle de fin (/>).
Fermer le fichier.
Je vous demanderais de ne pas me contacter si la procédure ne fonctionne pas car à cette étape vous auriez oublié d'enregistrer le fichier !
Finitions
Intégrer dans l'archive
J'espère que vous aviez compris que nous aurions encore besoin du fichier ".ZIP" et donc qu'il est toujours ouvert dans 7Zip.
Sinon, vous savez ce qu'il vous reste à faire.
Prenez le fichier ".XML" modifié, et glissez le dans l'archive.
7Zip vous demande de confirmer, le remplacement du fichier existant.
Si vous hésitez entre "Oui" ou "Non", je vous remercie d’oublier jusqu’à l’existence de cet article.
Renommer en .XLSX
Vous l'avez fait dans un sens, il faut le faire dans l'autre. Changer donc l'extension ".ZIP" en ".XLSX".
Encore un coup Windows se plaint, vous devriez savoir quoi faire, sinon, je ne peux plus rien pour vous.
Dégustez
Je suppose que vous savez ouvrir un fichier Excel. Non ? Vous venez de perdre 10 minutes !
Ôter la protection
Si vous avez choisi de n'enlever que le mot de passe et non pas la balise, il faut toujours ôter la protection mais aucun mot de passe n'est demandé.
Et pour le classeur
La démarche est la même. Le fichier à modifier se nomme workbook.xml et se trouve à la racine de l'archive.
Remerciements
Remercions Microsoft d'avoir prévu le coup de la perte de mot de passe en mettant en place une protection qui ne protège rien du tout 🙂
Restez informé
Inscrivez-vous à la newsletter et recevez l'actualité du blog dans votre boite aux lettres.