Mise en forme automatique avec fonction DECALER
Résolu
Utilisateur anonyme
-
Raymond PENTIER Messages postés 71826 Statut Contributeur -
Raymond PENTIER Messages postés 71826 Statut Contributeur -
Bonjour,
J'aimerais appliquer une mise en forme conditionnelle à une cellule en fonction du nombre de la cellule de droite.
Par exemple, en A1, j'aimerais que l'arrière-plan soit vert si le nombre en B1 est positif.
J'arrive à le faire manuellement, pour chaque cellule, soit en précisant directement les coordonnées de la cellule (B1), soit en utilisant une formule avec la fonction DECALER (=DECALER(INDEX(1:1048576;LIGNE();COLONNE());0;1)>0). Mais dès que j'essaie d'appliquer la règle à une plage (A1, A2, A3, etc.), les références ne sont pas relatives (à B1, B2, B3, etc.) et la mise en forme s'applique en fonction de la même cellule (B1) pour toute la plage.
Merci d'avance,
Cordialement,
PN6K12.
J'aimerais appliquer une mise en forme conditionnelle à une cellule en fonction du nombre de la cellule de droite.
Par exemple, en A1, j'aimerais que l'arrière-plan soit vert si le nombre en B1 est positif.
J'arrive à le faire manuellement, pour chaque cellule, soit en précisant directement les coordonnées de la cellule (B1), soit en utilisant une formule avec la fonction DECALER (=DECALER(INDEX(1:1048576;LIGNE();COLONNE());0;1)>0). Mais dès que j'essaie d'appliquer la règle à une plage (A1, A2, A3, etc.), les références ne sont pas relatives (à B1, B2, B3, etc.) et la mise en forme s'applique en fonction de la même cellule (B1) pour toute la plage.
Merci d'avance,
Cordialement,
PN6K12.
A voir également:
- Mise en forme automatique avec fonction DECALER
- Fonction si et - Guide
- Décaler une colonne excel - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Fonction remplacer sur word - Guide
3 réponses
Bonjour
tout ça semble bien compliqué en fonction de la question
pour que A soit vert si B est positif:
sélectionner le champ A à partir de A1
la formule:
=B1>0
s'appliquera bien en A1 si B1>0
en A2 si B2 >0
ect...
à condition que dans la formule , le B1 ne soit pas écrit $B$1
crdlmnt
tout ça semble bien compliqué en fonction de la question
pour que A soit vert si B est positif:
sélectionner le champ A à partir de A1
la formule:
=B1>0
s'appliquera bien en A1 si B1>0
en A2 si B2 >0
ect...
à condition que dans la formule , le B1 ne soit pas écrit $B$1
crdlmnt
OK, PN6K12 !
Tu as modifié ton explication ; il en ressort que "la mise en forme s'applique en fonction de la même cellule (B1) pour toute la plage", ce qui me semble tout-à-fait normal !
Il faudrait peut-être nous envoyer un fichier-exemple, sans données confidentielles, et avec toutes les précisions utiles, mais surtout avec tes formules.
Tu as modifié ton explication ; il en ressort que "la mise en forme s'applique en fonction de la même cellule (B1) pour toute la plage", ce qui me semble tout-à-fait normal !
Il faudrait peut-être nous envoyer un fichier-exemple, sans données confidentielles, et avec toutes les précisions utiles, mais surtout avec tes formules.
En réalité, je n'ai utilisé aucune formule dans les cellules pour solutionner mon problème.
La formule =DECALER(INDEX(1:1048576;LIGNE();COLONNE());0;1)>0 est utilisée uniquement dans la mise en forme conditionnelle.
Voici un fichier-exemple :
https://www.evernote.com/l/ADeCe5J7urZAlZXNEVbt4W-YXgpYqTUu4hA
J'y ai intégré des commentaires.
Comment appliquer cette mise en forme conditionnelle à l'ensemble de la plage en respectant les valeurs relatives ?
La formule =DECALER(INDEX(1:1048576;LIGNE();COLONNE());0;1)>0 est utilisée uniquement dans la mise en forme conditionnelle.
Voici un fichier-exemple :
https://www.evernote.com/l/ADeCe5J7urZAlZXNEVbt4W-YXgpYqTUu4hA
J'y ai intégré des commentaires.
Comment appliquer cette mise en forme conditionnelle à l'ensemble de la plage en respectant les valeurs relatives ?
Vos formules sont correctes, mais c'est l'adresse du champ traité qui ne convient pas:
dans votre exemple:
soit vous sélectionnez tout le champ à traiter et vous placez la formule qui correspond à la 1° cellule en haut
soit vous compléter dans la fenêtre d'affichage des MFC, les limites du champ (actuellement affiche B3 par exemple), à compléter pour couvrir tout le champ:
soit écrire:
$A$3:$B$14 dan sla fenêtre de droite
crdlmnt
dans votre exemple:
soit vous sélectionnez tout le champ à traiter et vous placez la formule qui correspond à la 1° cellule en haut
soit vous compléter dans la fenêtre d'affichage des MFC, les limites du champ (actuellement affiche B3 par exemple), à compléter pour couvrir tout le champ:
soit écrire:
$A$3:$B$14 dan sla fenêtre de droite
crdlmnt
Merci infiniment Vaucluse ! :)