Modification partielle d'un document protégé
Fermé
Tif76
Messages postés
3
Date d'inscription
jeudi 15 janvier 2015
Statut
Membre
Dernière intervention
11 février 2015
-
15 janv. 2015 à 22:21
Tif76 Messages postés 3 Date d'inscription jeudi 15 janvier 2015 Statut Membre Dernière intervention 11 février 2015 - 11 févr. 2015 à 21:01
Tif76 Messages postés 3 Date d'inscription jeudi 15 janvier 2015 Statut Membre Dernière intervention 11 février 2015 - 11 févr. 2015 à 21:01
A voir également:
- Modification partielle d'un document protégé
- Suivi de modification word - Guide
- Signer un document word - Guide
- Logiciel modification pdf gratuit - Guide
- Comment compresser un document pdf - Guide
- Comment ouvrir un document docx - Guide
4 réponses
via55
Messages postés
14502
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
9 décembre 2024
2 736
15 janv. 2015 à 22:53
15 janv. 2015 à 22:53
Bonsoir
Essaie une macro de ce type qui déprotége la feuille lorsqu'on selectionne la cellule B3 mais la reprotège lorsqu'on sélectionne toute autre cellule :
ou si tu as protégé la feuille avec un mot de passe :
ALT+F11 pour ouvrir l'editeur VBA, selectionner la feuille concernée dans l'arborescence, copier et coller la macro dans la page blanche puis fermer l'éditeur
Cdlmnt
Essaie une macro de ce type qui déprotége la feuille lorsqu'on selectionne la cellule B3 mais la reprotège lorsqu'on sélectionne toute autre cellule :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ActiveSheet.Protect ' si cellule cible est celle en ligne 3 et colonne 2 deprotection (à adapter) If Target.Row = 3 And Target.Column = 2 Then ActiveSheet.Unprotect End If End Sub
ou si tu as protégé la feuille avec un mot de passe :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ActiveSheet.Protect ("ton mot de passe") If Target.Row = 3 And Target.Column = 2 Then ActiveSheet.Unprotect ("ton mot de passe") End If End Sub
ALT+F11 pour ouvrir l'editeur VBA, selectionner la feuille concernée dans l'arborescence, copier et coller la macro dans la page blanche puis fermer l'éditeur
Cdlmnt
Hillian Fellers
Messages postés
79
Date d'inscription
mardi 22 octobre 2013
Statut
Membre
Dernière intervention
24 mai 2022
12
15 janv. 2015 à 22:55
15 janv. 2015 à 22:55
Il y a peut-être une réponse intéressante ici:
https://docs.microsoft.com/en-us/office/troubleshoot/excel/apply-password-to-separate-range
https://docs.microsoft.com/en-us/office/troubleshoot/excel/apply-password-to-separate-range
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
Modifié par eriiic le 15/01/2015 à 23:31
Modifié par eriiic le 15/01/2015 à 23:31
Bonjour à tous,
Si c'est pour ôter la protection à la sélection de la cellule autant ne pas la protéger non ? ;-)
Autre proposition qui te restaure le contenu (valeur ou formule) en cas de saisie dans la plage désignée (A2:B2 dans l'exemple)
Les cellules doivent être non protégées pour permettre les mises en forme.
https://www.cjoint.com/c/EApxMYSbMcs
eric
PS : tu peux ajouter un message d'alerte juste avant le Exit Sub
Msgbox "Opération interdite, annulée"
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Si c'est pour ôter la protection à la sélection de la cellule autant ne pas la protéger non ? ;-)
Autre proposition qui te restaure le contenu (valeur ou formule) en cas de saisie dans la plage désignée (A2:B2 dans l'exemple)
Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range For Each c In Target If Not Intersect(c, [A2:B2]) Is Nothing Then Application.EnableEvents = False Application.Undo Application.EnableEvents = True Exit Sub End If Next c End Sub
Les cellules doivent être non protégées pour permettre les mises en forme.
https://www.cjoint.com/c/EApxMYSbMcs
eric
PS : tu peux ajouter un message d'alerte juste avant le Exit Sub
Msgbox "Opération interdite, annulée"
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
via55
Messages postés
14502
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
9 décembre 2024
2 736
Modifié par via55 le 15/01/2015 à 23:57
Modifié par via55 le 15/01/2015 à 23:57
Bonsoir Eric
Si c'est pour ôter la protection à la sélection de la cellule autant ne pas la protéger non ? ;-)
Oui mais le cas proposé est un peu plus complexe :
- la feuille est protégée en laissant la possibilité de ne rentrer des données que dans les cellules non verrouillées
- certaines cellules sont non verrouillées
- et dans une seule d'entre elle il doit être possible de modifier en plus la mise en forme
Donc la feuille doit bien être protégée pour ne laisser accès qu'aux cellules déverrouillées en ne permettant cependant pas de mise en forme dans celles-ci et en même temps il faut déprotéger à un moment la feuille pour permettre de changer le format de la seule cellule dans laquelle cela est permis, d'où ma macro !
Si tu vois une autre solution ?
Bien cdlmnt
Si c'est pour ôter la protection à la sélection de la cellule autant ne pas la protéger non ? ;-)
Oui mais le cas proposé est un peu plus complexe :
- la feuille est protégée en laissant la possibilité de ne rentrer des données que dans les cellules non verrouillées
- certaines cellules sont non verrouillées
- et dans une seule d'entre elle il doit être possible de modifier en plus la mise en forme
Donc la feuille doit bien être protégée pour ne laisser accès qu'aux cellules déverrouillées en ne permettant cependant pas de mise en forme dans celles-ci et en même temps il faut déprotéger à un moment la feuille pour permettre de changer le format de la seule cellule dans laquelle cela est permis, d'où ma macro !
Si tu vois une autre solution ?
Bien cdlmnt
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
Modifié par eriiic le 16/01/2015 à 00:32
Modifié par eriiic le 16/01/2015 à 00:32
Oui mais si tu déprotèges ça ne sert à plus rien de protéger cette cellule puisqu'on peut y faire ce qu'on veut, y compris supprimer son contenu.
Si tu vois une autre solution ?
Voir ma proposition au-dessus. Le contenu est protégé et on peut changer les mises en formes.
Mais c'est vrai que j'ai oublié la partie déprotection de la feuille pour ces cellules.
Il faut ajouter :
Le fichier modifié : https://www.cjoint.com/c/EAqaKmcTk3b
J'ai l'impression que c'est bon dans tous les cas de figure.
J'ai prévu plusieurs cellules au cas où. Si c'est vraiment qu'une seule cellule concenée on peut simplifier. Mais qui peut le plus peut le moins comme on dit
eric
Si tu vois une autre solution ?
Voir ma proposition au-dessus. Le contenu est protégé et on peut changer les mises en formes.
Mais c'est vrai que j'ai oublié la partie déprotection de la feuille pour ces cellules.
Il faut ajouter :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pl As Range
Set pl = Intersect(Target, [A2:B2])
If pl Is Nothing Then ActiveSheet.Protect: Exit Sub
If pl.Address = Target.Address Then
'si la plage sélectionnée est intégralement contenue dans la plage aux mises en forme autorisées
ActiveSheet.Unprotect
Else
ActiveSheet.Protect
End If
End Sub
Le fichier modifié : https://www.cjoint.com/c/EAqaKmcTk3b
J'ai l'impression que c'est bon dans tous les cas de figure.
J'ai prévu plusieurs cellules au cas où. Si c'est vraiment qu'une seule cellule concenée on peut simplifier. Mais qui peut le plus peut le moins comme on dit
eric
via55
Messages postés
14502
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
9 décembre 2024
2 736
>
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
16 janv. 2015 à 00:30
16 janv. 2015 à 00:30
Ah tu as compris qu'il fallait protéger le contenu ?
Je n'avais pas compris dans ce sens vu qu'il était dit : J'ai créé plusieurs documents, dont j'ai déverrouillé des cellules pour permettre l'écriture aux différents utilisateurs
Attendons de voir ce qu'en dit le demandeur lorsqu'il se manifestera
Je n'avais pas compris dans ce sens vu qu'il était dit : J'ai créé plusieurs documents, dont j'ai déverrouillé des cellules pour permettre l'écriture aux différents utilisateurs
Attendons de voir ce qu'en dit le demandeur lorsqu'il se manifestera
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
16 janv. 2015 à 00:38
16 janv. 2015 à 00:38
Ben oui j'ai supposé ça.
S'il n'y a rien à protéger pourquoi on en parlerait ? Il suffit de la déverrouiller ;-)
S'il n'y a rien à protéger pourquoi on en parlerait ? Il suffit de la déverrouiller ;-)
Tif76
Messages postés
3
Date d'inscription
jeudi 15 janvier 2015
Statut
Membre
Dernière intervention
11 février 2015
11 févr. 2015 à 21:01
11 févr. 2015 à 21:01
J'ai bien pris vos différents commentaires et vous remercie pour vos réponses.
Oui je sais que le plus facile de ne pas bloquer la feuille mais j'ai pas le choix malheureusement.
J'ai trouvé une solution plus simple, l'installation d'une zone de texte avec le texte déverrouillé dans ses propriétés. Elle me permet de bloquer totalement ma feuille Excel et permet aux utilisateurs de modifier le format du texte dans cette unique zone.
Merci pour vos différents postes
Oui je sais que le plus facile de ne pas bloquer la feuille mais j'ai pas le choix malheureusement.
J'ai trouvé une solution plus simple, l'installation d'une zone de texte avec le texte déverrouillé dans ses propriétés. Elle me permet de bloquer totalement ma feuille Excel et permet aux utilisateurs de modifier le format du texte dans cette unique zone.
Merci pour vos différents postes