Test conditionnel portant sur la couleur de la cellule
regis95800
Messages postés
8
Statut
Membre
-
Raymond PENTIER Messages postés 71831 Date d'inscription Statut Contributeur Dernière intervention -
Raymond PENTIER Messages postés 71831 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai fait un tableau excel avec certaines cases avec fonds de couleur jaune et d'autres non;
je souhaite que les cellules sans fonds de couleur aient le chiffre 0 et celles avec le fonds de couleur jaune la valeur se trouvant dans la première cellule de la colonne
quelqu'un sait il comment faire un test conditionnel portant sur la couleur de la cellule ?
merci
j'ai fait un tableau excel avec certaines cases avec fonds de couleur jaune et d'autres non;
je souhaite que les cellules sans fonds de couleur aient le chiffre 0 et celles avec le fonds de couleur jaune la valeur se trouvant dans la première cellule de la colonne
quelqu'un sait il comment faire un test conditionnel portant sur la couleur de la cellule ?
merci
A voir également:
- Test conditionnel portant sur la couleur de la cellule
- Test performance pc - Guide
- Excel cellule couleur si condition texte - Guide
- Test steam deck oled - Guide
- Test disque dur - Télécharger - Informations & Diagnostic
- La boite a couleur - Télécharger - Divers Photo & Graphisme
4 réponses
en fait non ; mon besoin n'est pas de coloriser la cellule
mon besoin est :
si je colorise la cellule (par exemple en jaune), apparait la valeur qui se trouve en haut de la colonne; si je ne colorise pas la cellule, n'apparaît aucune valeur ou bien apparait la valeur 0
j'espère être plus clair sur mon besoin
merci en tout cas
mon besoin est :
si je colorise la cellule (par exemple en jaune), apparait la valeur qui se trouve en haut de la colonne; si je ne colorise pas la cellule, n'apparaît aucune valeur ou bien apparait la valeur 0
j'espère être plus clair sur mon besoin
merci en tout cas
Oui, c'est très clair : c'est que tu as demandé au départ ...
Moi, je t'explique que ce n'est pas la meilleure approche : Ce n'est pas plus long ni plus compliqué de saisir la formule dans toutes les cellules du tableau (juste un copier-coller) puis de mettre des 0 au lieu de mettre du jaune, là où c'est nécessaire. Et cela ne nécessite pas de macro !
Cordialement.
Moi, je t'explique que ce n'est pas la meilleure approche : Ce n'est pas plus long ni plus compliqué de saisir la formule dans toutes les cellules du tableau (juste un copier-coller) puis de mettre des 0 au lieu de mettre du jaune, là où c'est nécessaire. Et cela ne nécessite pas de macro !
Cordialement.
Il y a plusieurs ton de jaune
dans un premier temps
pour savoir le code couleur
sur la feuille selectionne une cellule colorée
et exécute cette macro
le jaune classique te renvoie 65535
en connaissant le code tu boucleras sur la zone de travail avec la fonction Find
avec le parametre "searchformat"
désolé, mais je dois m'absenter
Michel
dans un premier temps
pour savoir le code couleur
sur la feuille selectionne une cellule colorée
et exécute cette macro
Sub couleur()
MsgBox ActiveCell.Interior.Color
End Sub
le jaune classique te renvoie 65535
en connaissant le code tu boucleras sur la zone de travail avec la fonction Find
avec le parametre "searchformat"
désolé, mais je dois m'absenter
Michel
En lisant ton échange avec Raymond, je m'aperçois que j'avais mal compris ton pb
Excel étant un calculateur , Vba a du mal avec des évènements sur des couleurs donc
principe: tu mets la cellule en jaune et tu fais un clic droit
macro à copier-coller dans le module feuille concerné
pour cela faire un copier de cecode
clic droit sur l'onglet de la feuille
visualiser le code
coller
la maquette de W
https://www.cjoint.com/c/FJvpineX636
Michel
Excel étant un calculateur , Vba a du mal avec des évènements sur des couleurs donc
principe: tu mets la cellule en jaune et tu fais un clic droit
Option Explicit
'------------------------------------------------------
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A3:D10")) Is Nothing Then
If Target.Interior.ColorIndex = 6 Then: Target = Cells(1, Target.Column)
End If
Cancel = True
End Sub
macro à copier-coller dans le module feuille concerné
pour cela faire un copier de cecode
clic droit sur l'onglet de la feuille
visualiser le code
coller
la maquette de W
https://www.cjoint.com/c/FJvpineX636
Michel