créer une macro pour identifier cellules identiques dans colonne et mettre un format

merguez59

XLDnaute Nouveau
Bonjour

J'ai des références dans une colonne.
Certaines sont exactement les mêmes. Je souhaite, à l'aide d'une macro, mettre en forme identique ces cellules (références) similaires.

Dans l'exmple du fichier joint, je veux que toutes les cellules qui contiennent WARP 300CM soient d'une couleur, celles qui contiennent BLEACHED d'une autre et ainsi de suite (avec un nombre infini (ou très important) de références)
Que le choix de la couleur soit aléatoire mais unique à chaque cellule identique. Donc par ex que les 3 cellules WARP 300CM soient rouges si c'est le rouge qui est choisi aléatoirement dès que la macro rencontre pour la première fois WARP 300CM.

Merci d'avance!
 

Pièces jointes

  • Classeur5.xlsx
    9.2 KB · Affichages: 34
  • Classeur5.xlsx
    9.2 KB · Affichages: 47
  • Classeur5.xlsx
    9.2 KB · Affichages: 52

DoubleZero

XLDnaute Barbatruc
Re : créer une macro pour identifier cellules identiques dans colonne et mettre un fo

Bonjour, merguez59, le Forum,

Un gros merci à BOISGONTIER :)...

Code:
Sub Doublons_repérer()
'Merci, BOISGONTIER
  couleurs = Array(1, 3, 4, 6, 7, 8, 14, 15, 17, 20, 22, 24, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 50, 53)
  Set mondico = CreateObject("Scripting.Dictionary")
  For Each c In Range("a2", [a65000].End(xlUp))
    If c <> "" Then mondico.Item(c.Value) = mondico.Item(c.Value) + 1
  Next c
  For Each c In Range("a2", [a65000].End(xlUp))
   If c <> "" Then
     nocoul = (Application.Match(c.Value, mondico.keys, 0)) Mod UBound(couleurs)
     If mondico.Item(c.Value) > 1 Then c.Interior.ColorIndex = couleurs(nocoul)
   End If
  Next c
End Sub

A bientôt :)
 

Discussions similaires

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 810
dernier inscrit
mohammedaminelahbali