Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Protéger mise en forme conditionnelle

4 réponses
Avatar
Martinella
Bonjour,
Sur mon tableau, certaines cellules =E0 saisir contiennent une mise en form=
e conditionnelle.
Je souhaiterai savoir s'il est possible de prot=E9ger cette mise en forme c=
onditionnelle tout en pouvant autoriser la saisie.

Merci
Martinella

4 réponses

Avatar
MichD
Bonjour,

Je n'ai pas vraiment compris ta question.

Le fait de saisir manuellement des données dans des cellules ayant une forme
en mise conditionnelle ne modifie pas la mise en forme conditionnelle.

Là, où il faut porter une attention particulière, c'est lorsque tu fais un
copier-coller d'une plage de cellules vers une autre plage de cellules
possédant une mise en forme conditionnelle. Le "coller" de la plage de
cellule source amène parmi les caractéristiques de celle-ci le formatage.
Selon que la plage source contient ou non une mise en forme conditionnelle,
la plage de destination va en être modifiée.

C'est aussi vrai si tu recopies des cellules en utilisant la croix de
recopie d'une cellule. Cette action peut être désactivée dans les options
avancées d'Excel.
Avatar
Martinella
Le jeudi 11 septembre 2014 11:56:04 UTC+2, Martinella a écrit :
Bonjour,

Sur mon tableau, certaines cellules à saisir contiennent une mise en fo rme conditionnelle.

Je souhaiterai savoir s'il est possible de protéger cette mise en forme conditionnelle tout en pouvant autoriser la saisie.



Merci

Martinella



Bonsoir
Je m'explique : je souhaiterais que les utilisateurs qui effectuent la sais ie ne puissent pas aller dans la mise en forme conditionnelle pour y faire des modifications, donc protéger l'accès à la cde mise en forme condi tionnelle.
Est-ce possible ?

Ta suggestion de désactiver l'option autorisant dans la recopie ou le col lage le format de la cellule source me paraît intéressante ; mais je n' ai pas trouvé la rubrique dans les options avancées d'Excel.

Merci
P.S. J'avais publié ce message dans le courant de la journée mais je pe nse qu'il n'est pas passé
Avatar
MichD
Bonjour,

Solution A -

Ce que tu veux, faire disparaître (rendre invisible) cette commande du ruban
est un peu plus compliqué.
Si cela t'intéresse, le tout est expliqué ici :
'------------------------------------------------------------------------
Pour jouer avec les éléments du ruban, c'est un peu plus complexe que les
anciennes barres d'outils d'Excel.

Pour ta question spécifique, tu peux regarder là, tu peux même télécharger
des fichiers exemples.
http://www.rondebruin.nl/win/s2/win012.htm

Le site de Ron de Bruin est très complet sur la question.

Pour accéder la section de son site où il est question du ruban et de la
barre d'accès rapide,
http://www.rondebruin.nl/win/section2.htm

Désolé, le site est en anglais.
'------------------------------------------------------------------------


Solution B -

1- pour désactiver l'option "Activer la poignée de recopie et le
glisser-déplacer des cellules"
Fichier / Options / Options avancées / section : Options d'édition.

2 - Je te suggère plutôt ceci : copie cette procédure dans le ThisWorkbook
de ton classeur.
Pour ouvrir l'éditeur de code VBA : Raccourci clavier Alt + F11
Dans la petite fenêtre de gauche, tu sélectionnes le projetVBA de ton
fichier et tu ouvres
l'arborescence des objets que contient ton classeur.

3 - Tu double-cliques sur l'objet "ThisWorkbook" et tu fais un copier-coller
de cette procédure.

4 - Dans la procédure, tu dois adapter "Feuil1" de cette ligne de code If
Sh.CodeName = "Feuil1" Then
par la propriété "Name" de l'objet feuille de calcul. Je ne parle pas
ici du nom de l'onglet de la feuille de calcul.
Dans ton projetVBA, lorsque tu regardes les objets de ton projetVBA, la
liste des feuilles
se présente de cette manière :
Feuil1(Feuil1)
Feuil1 c'est ce que tu dois utiliser pour effectuer la macro.
(Feuil1) est le nom de l'onglet de la feuille, ce n'est pas utile pour
la procédure.

5 - Dans cette ligne de code : If Not Intersect(Target, Range("A1:G25")) Is
Nothing Then
Tu adaptes la plage A1:G25 par l'adresse de la plage où tu as les mises
en forme conditionnelle

6 - Ce code va désactiver le copier-coller dans cette feuille dès qu'une
cellule de la plage de cellules
est impliquée. Elle va aussi désactiver la poignée de raccourci.

7 - Cellule par cellule, il sera toujours possible pour l'usager de modifier
la mise en forme conditionnelle.
Cependant, si tu utilises l'enregistreur de macros lorsque tu définis
la mise en forme conditionnelle,
Tu obtiendras la majorité du code. Par code, on peut rendre l'exécution
de ce code automatique
afin de remettre automatiquement la mise en forme conditionnelle.

'-------------------------------------------------------------------
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target
As Range)
If Sh.CodeName = "Feuil1" Then
If Not Intersect(Target, Range("A1:G25")) Is Nothing Then
Application.CellDragAndDrop = False
Application.CutCopyMode = False
Else
Application.CellDragAndDrop = True
Application.CutCopyMode = True
End If
Else
Application.CellDragAndDrop = True
Application.CutCopyMode = True
End If
End Sub
'-------------------------------------------------------------------








"Martinella" a écrit dans le message de groupe de discussion :


Le jeudi 11 septembre 2014 11:56:04 UTC+2, Martinella a écrit :
Bonjour,

Sur mon tableau, certaines cellules à saisir contiennent une mise en forme
conditionnelle.

Je souhaiterai savoir s'il est possible de protéger cette mise en forme
conditionnelle tout en pouvant autoriser la saisie.



Merci

Martinella



Bonsoir
Je m'explique : je souhaiterais que les utilisateurs qui effectuent la
saisie ne puissent pas aller dans la mise en forme conditionnelle pour y
faire des modifications, donc protéger l'accès à la cde mise en forme
conditionnelle.
Est-ce possible ?

Ta suggestion de désactiver l'option autorisant dans la recopie ou le
collage le format de la cellule source me paraît intéressante ; mais je n'ai
pas trouvé la rubrique dans les options avancées d'Excel.

Merci
P.S. J'avais publié ce message dans le courant de la journée mais je pense
qu'il n'est pas passé
Avatar
MichD
Évidemment, si tu choisis l'option macro, il faudra que tu protèges le
projetVBA du classeur
afin que les usagers ne puissent modifier le code!