Verrouillez boites de dialogue dans onglet classeurs excel
Résolu/FerméLe Pingou Messages postés 12137 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 27 août 2024 - 8 août 2022 à 16:42
- Verrouillez boites de dialogue dans onglet classeurs excel
- Liste déroulante excel - Guide
- Verrouiller cellule excel - Guide
- Si et excel - Guide
- Rouvrir onglet fermé - Guide
- Aller à la ligne dans une cellule excel - Guide
17 réponses
6 août 2022 à 16:57
Bonjour,
Une solution est de verrouiller les cellules qui ne doivent pas être modifier et déverrouiller toutes celles qui sont accessible par l’utilisateur et vous protéger la feuille avec un mot de passe.
6 août 2022 à 17:18
c'est pas le cas
puisque j'ai utiliser des codes vba c'est l'option : saisie dans la liste déroulante avec la recherche par la première lettre, cette option ne marche pas que avec un code vba où la feuille serai déprotégée, alors mon code vba c'est de déprotéger la feuille quand je sélectionner la liste déroulante, et dès que sort de la plage de la liste déroulante, la feuille sera protégée automatiquement, je sais pas si je peut joindre ici mon fichier excel ou non
Modifié le 6 août 2022 à 17:49
Bonjour,
Vous n'aviez pas précisé que vous travaillez avec vba, dans se cas vous devez introduire une ligne d'instruction dans votre code pour déverrouiller la feuille et faire le travail et en suite verrouiller à nouveau la feuille.
Sheets("Feuil1").Unprotect "password"
Sheets("Feuil1").Protect "password"
Note: pour joindre le fichier le faire sur https://www.cjoint.com/ ensuite poster le lien.
6 août 2022 à 20:27
https://www.cjoint.com/c/LHgswJnkyGj
c'es le lien, alors je veux quand je sélectionner une cellule dans la liste déroulante colonne C , et quand la feuille déprotéger automatiquement pour utiliser la sais par la première lettre, ici je veux en même temps que onglet: Données /validation des données et Données/Filtre restant protégés
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question6 août 2022 à 22:25
Bonsoir,
Merci du retour.
Je regarderai le tout demain.
6 août 2022 à 22:29
Ok Merci
et bonne nuit pour vous
7 août 2022 à 15:49
Bonjour,
Est-ce bien dans la feuille [JOURNAL 01-2022] que vous voulez protéger les formules qui se trouvent dans la ligne (21) intitulé [Total] … ?
Au passage j’ai modifié vos codes pour le mot de passe, j’ai inséré une constante LeMDP qui reçoit la valeur et j’utilise le nom de la constante dans les codes. En cas de modification du mot de passe vous devez le modifier dans la constante (une seule fois…).
Le lien : https://www.cjoint.com/c/LHhnWVV2yYn
8 août 2022 à 02:01
Bonjour
ma question été bien déterminée
"alors je veux quand je sélectionner une cellule dans la liste déroulante colonne C , et quand la feuille déprotéger automatiquement pour utiliser la sais par la première lettre, ici je veux en même temps que onglet: Données /validation des données et Données/Filtre restant protégés"
SVPL cliquer sur n"import cellule dans la liste déroulante dans la colonne C tu va constater que la feuille sera déprotéger automatiquement, alors ici rester sur la même liste est allez au menue : Données, tu constate que vous pouvez modifier le filtre, et aussi le boite de dialogue : validation des données, alors je veux que ces deux options restant protégés au même temps quand je saisie dans cette liste dans la colonne C, plus que ça rien a modifier ,
Merci
8 août 2022 à 10:51
Bonjour,
ma question été bien déterminée
Eh non car il manque le principal, sur quelle feuille...!
En plus vous ne me mentionnez rien sur le fichier mis à votre disposition, c'est regrettable !
Question de qui est le code VBA ?
8 août 2022 à 11:15
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("LISTEZOOM"), Target) Is Nothing And Target.Count = 1 Then
ActiveWindow.Zoom = 160
ActiveSheet.Unprotect "18163515"
Else
ActiveWindow.Zoom = 100
ActiveSheet.Protect "18163515", AllowFiltering:=True
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lig As Integer
Dim plageFRS As Range
If Target.Count > 1 Then Exit Sub
If Target.Value = vbNullString Then Exit Sub
On Error Resume Next
ActiveWindow.Zoom = 100
If Not Intersect(Target, ListObjects("Tableau4").ListColumns(3).DataBodyRange) Is Nothing Then
If Err.Number > 0 Then Exit Sub
Set plageFRS = Sheets("Liste FRS").ListObjects("Tableau1").ListColumns(1).DataBodyRange
lig = plageFRS.Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole).Row
If lig = 0 Then MsgBox "Attention: Le fournisseur n'existe pas dans la liste, veuillez le saisie dans la liste de la Feuille Liste FRS !": Target.ClearContents
End If
End Sub
Voilà le code la feuille "JOURNAL 01-2022" dans la liste déroulante de la colonne "C"
cliquer sur n"import cellule dans la liste déroulante dans la colonne C tu va constater que la feuille sera déprotéger automatiquement, alors ici rester sur la même liste est allez au menue : Données, tu constate que vous pouvez modifier le filtre, et aussi le boite de dialogue : validation des données, alors je veux que ces deux options restant protégés au même temps quand je saisie dans cette liste dans la colonne C, plus que ça rien a modifier ,
8 août 2022 à 11:19
Bonjour,
Ce n'est pas la réponse : Question de qui est le code VBA ?
Je vous remet le fichier à disposition une deuxième fois : https://www.cjoint.com/c/LHijqaGJVMn
8 août 2022 à 11:44
waaaw, c'est une bonne aidee, alors dans la feuille "JOURNAL 01-2022" le Ruban au dessus est complètement masqué
Alors le code c'est bien le suivant ?
Private Sub Worksheet_Activate()
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
End Sub
Private Sub Worksheet_Deactivate()
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"
End Sub
le deuxième c'est bien Deactivate ? puisque quand j'ai ajouter juste "S" dans le mots Deactivate = Desactivate, alors les Rubans de tous les feuille sont masqués
8 août 2022 à 12:11
Bonjour,
A vous de voir se qui se passe lorsque l'on modifie un nom de macro sans en connaitre les effets.... c'est comme l'ensemble de vos réponses aux questions !
8 août 2022 à 12:42
c'été juste pour confirmer que ce n'est pas une erreur de frappe.
Ok Merci pour tout
avant de cloture se sujet, SVPL, cette macro de masquer la barre des rubans , Pouvez-vous la programmer pour qu'il ne s'exécute que lors de la saisi dans l'espace de la liste déroulante "Fournisseur" feuille "JOURNAL 01-2022" colonne "C" ?
je veux dire quand je clique en dehors de cette liste le ruban sera afficher automatiquement ?
Modifié le 8 août 2022 à 13:26
Bonjour,
En résumé, dès que vous êtes sur une autre colonne que la [C] alors tout est permis , donc cela ne sert à rien.
Note: je ne sais toujours pas qui a réaliser l'ensemble des macros!
8 août 2022 à 13:43
En résumé, dès que vous êtes sur une autre colonne que la [C] alors tout est permis , donc cela ne sert à rien.
Monsieur Le Pingou, dans le fichier que vous m'avez envoyé, quand je serai dans une autre colonne hors que la colonne (C) le Ruban reste toujours masqué
Note: je ne sais toujours pas qui a réaliser l'ensemble des macros!
c'est été a l'aide d'un autre fourme avant que je découvre ce fourme
le problème ce n'est pas dans l'ensemble des mes macros, j'ai essayer votre code dans une feuille d'un nouveau classeur vide alors le ruban est être masqué , je veux savoir si possible d'activer ce code juste a la sélection d'un colonne
Merci
8 août 2022 à 16:42
Bonjour,
Alors vous supprimer les macros et vous insérer les 2 lignes de code à l'endroit souhaité selon ce vous souhaitez dans les 2 macros événementielles
Worksheet_SelectionChange et Worksheet_Change
Ne sachant pas se que vous faites comme contrôle lors de l'entrée des données, je ne suis pas à même de résoudre a demande.