Colorier les valeurs en double d'une même coleur

kanizol Messages postés 8 Date d'inscription vendredi 23 mai 2014 Statut Membre Dernière intervention 6 février 2015 - 5 févr. 2015 à 12:32
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 6 févr. 2015 à 10:18
Bonjour,
Je voudrais un code qui va colorier les cellules d'une même valeur avec une même couleur, sachant qu'il y a plusieurs valeurs;
par exemple cellule A et Cellule B ont la meme valeur donc on les donne la meme couleurs; aussi la cellule C el la Cellule D ont la même valeur, on les donne un autre couleur différent de celle de les cellule A et B
et merci

7 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 212
Modifié par ucfoutu le 5/02/2015 à 12:44
Bonjour,
Chercher un code, c'est un début de début de début
Commencer à raisonner et donc ensuite à transposer sa raison par code est le seul vrai début.
Qu'as-tu donc commencé à tenter d'écrire pour y parvenir ? (Montre le code au moins tenté).
A ce "stade", juste une piste à prospecter : utilisation d'un dictionnaire ou d'une collection. Ou même de la méthode Find (si même valeur au-dessus ===>> voir la couleur correspondante et l'attribuer).
Ou même (toujours avec la méthode Find : parcourir en boucle pour déterminer la plage de cellules de même valeur (utilisation de la méthode Union) et attribuer une couleur à cette plage.
Montre-nous ce que tu veux bien tenter sur la base de ces éclaircissements.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
kanizol Messages postés 8 Date d'inscription vendredi 23 mai 2014 Statut Membre Dernière intervention 6 février 2015
5 févr. 2015 à 12:49
merci,
voici le code que j'ai crée
Sub essai1 ()

For x = 4 To 17

If Feuil2.Cells(x, 2).Value = Feuil2.Cells(x, 4).Value Then
Feuil2.Cells(x, 3).Interior.ColorIndex = 12
Feuil2.Cells(x, 5).Interior.ColorIndex = 12

End If
Next
x = x + 1

End Sub
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 212
Modifié par ucfoutu le 5/02/2015 à 14:31
Je ne comprends pas.
Le code que tu montres se contente de donner la valeur 12 à aux colonnes C et E d'une ligne si les colonnes B et D de la même ligne ont la même valeur. Et ceci pour chacune des lignes 4 à 17.
C'est cela, que tu veux ?
D'autant moins clair que, si c'est ce que tu veux, ce code fait déjà cela !
Quel est alors ton VRAI problème ?

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
kanizol Messages postés 8 Date d'inscription vendredi 23 mai 2014 Statut Membre Dernière intervention 6 février 2015
5 févr. 2015 à 15:34
Bonjour,
Je voudrais un code qui donne le résultat suivant
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 212
Modifié par ucfoutu le 5/02/2015 à 17:38
Hé bien :
1) relis mon premier message. Il te met sur plusieurs pistes.
Quel code as-tu au moins tenté (sinon tente-le) sur ces indications ?
2) tu risques fort d'avoir besoin d'un nombre incalculable de couleurs différentes, si tu as un grand nombre de données ! Comment comptes-tu faire avec colorindex, qui non seulement n'en possède que 56, mais en plus avec beaucoup d'entre elles si proches l'une de l'autre qu'il est difficile de les différencier facilement visuellement ?
Si ton objectif est de repérer ainsi visuellement les valeurs identiques, te voilà bien mal barré !

PS : et ne me réponds pas trop vite (en ce qui concerne le point 2) en me disant qu'il te suffit d'alterner des couleurs en colonne A de sorte à ce que deux couleurs successives soient suffisamment différentes. Pourquoi cela serait-il vain ? tout simplement parce que tu aurais beau prendre une telle "précaution" en colonne A, elle perdrait cet "avantage" en colonne B (où les valeurs ne sont pas dans le même ordre qu'en colonne A).
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
kanizol Messages postés 8 Date d'inscription vendredi 23 mai 2014 Statut Membre Dernière intervention 6 février 2015
6 févr. 2015 à 10:15
Bonjour,
Je ne reponds pas vite parceque vraiment je suis débutant en vba et je prends beaucoup de temps à penser à la solution mais sans aucun resultat
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 212
Modifié par ucfoutu le 6/02/2015 à 10:45
Je crains tout simplement que ce "résultat" n'existe pas (pour les raisons que j'ai signalées), s'il s'agit vraiment d'obtenir un "repérage" visuel efficace !
Tout pourra être "séparé" en première colonne (on peut faire), mais on ne pourra par contre pas éviter des "confusions visuelles" dans les autres colonnes.

EDIT : pour t'en convaincre : oublie l'informatique. Prend 6 feutres de couleur différente et une feuille de papier avec 4 colonnes.
Mets-y des valeurs non réparties de la même manière entre les colonnes. Puis essaye d'attribuer des couleurs aux valeurs de la première colonne, puis colorie de la même couleur les valeurs semblables dans les autres colonnes. Tu vas vite comprendre !
Ce n'est qu'une question de logique pure, avant même de parler d'informatique.

Tiens ==>> regarde ce qui va arriver (et encore ... avec peu de données, peu de colonnes, et aucune valeur répétée, ni en première colonne, ni en 2ème colonne).
Ce serait très nettement pire avec beaucoup de colonnes, etc ...


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
Rejoignez-nous