Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Bonjour,
J'aimerais savoir de quel façon je peux corriger mon code. J'ai vérouillé mon classeur avec le mot de passe suivant: 123, mais je n'arrive pas à faire fonctionner ma macro.
De plus à la fin je veux remettre mon mot de passe.
Voici le code:
Private Sub CommandButton1_Click()
If Not Len(TextBoxNumero) = 4 Then
MsgBox "Le numéro doit comporter 4 chiffres !" & vbCrLf & "Veuillez recommencer", vbOKOnly + vbExclamation, "NUMERO NON VALIDE"
Exit Sub
End If
Workbook.Unprotect Password = 123
ActiveWorkbook.Unprotect
Sheets("Transfert de données (log)").Visible = True
Sheets("Transfert de données (log)").Select
Range("M6").Value = TextBoxNumero
Range("A6:M6").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Générateur").Visible = True
Sheets("Générateur").Select
Range("P53").Select
Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
Sheets("Bride").Select
Rows("10:10").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A10").Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("A9:M9").Select
Selection.Copy
Range("A10:M10").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("A10").Select
ActiveWorkbook.Save
ActiveWindow.Close
Sheets("Formulaire moule O-1").Select
Sheets("Générateur").Visible = False
Sheets("Transfert de données (log)").Visible = False
ActiveWorkbook.Protect
Workbook.Protect Password = 123
UserForm6.Hide
End Sub
En étant un peu plus sérieux : Tu donnes un code qui ne fonctionne pas comme tu veux, tu ne donnes aucune ligne en erreur, aucune indication de ce qui se passe et tu espères qu'on découvre tout ? Ma boule de cristal est en grève !
Code:
Workbook.Unprotect Password = 123
comprend pas ce que ça veut dire : on doit enlever la protection d'un classeur, et si on est sage on saura lequel ?
On copie la sélection dans le presse-papier
on affiche une feuille, on attribue après à une autre sélection un lien hypertexte. Et on en fait quoi du presse-papier ? À quoi ça a servi de le remplir ?
Je ne suis pas allé plus loin ; tu as une macro faite sans logique, et aucune indication de ce qu'elle est supposée faire.
Tu utilises des Select/Selection, qui ne servent qu'à ralentir les codes
Pas moyen de faire quelque chose de correct sans plus d'infos : que doit faire la macro ?
Rappel : on ne connaît d'un problème que ce que nous expliquent les postes. Tout ce qui semble évident... ne l'est que pour quelqu'un qui utilise régulièrement le fichier (qu'on a pas). Et si on doit deviner ou interpréter quoi que ce soit, la Loi de Murphy nous dit que se sera de manière erronée.
A+
La macro doit copier un no de dessin dans le TextBoxNumero et l'écrire dans l'onglet Transfert de données (log). Le problème s'est que je dois protèger mon classeur pour donner accès qu'à l'onglet Formulaire moule O-1. J'ai ajouté un mot de passe pour enlever la protection du classeur, car tous les autres onglets de mon ficchier sont invisibles.
Le but s'est d'enlever la protection du classeur, exécuter la macro tel quelle et remettre la protection du classeur à chaque fois. Présentement ma base de donnée est dans un fichier externe (Range("P53").Select Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True). La macro actuelle, s'elle qui est dans mon exemple, fait partie du formulaire que je suis en train de monter.
Est-ce que j'ai été assez clair?.
Je veux juste déprotèger mon classeur avant d'exécuter ma macro.....
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD