Code vba pour colorier des cellules selon valeur

Myaziz Messages postés 1 Statut Membre -  
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,

J'ai un tableau dans lequel sont inscrites des lettres ! Je souhaiterais que, par l’intermédiaire d'une macro, pour une sélection de cellules supérieur à C12, Pour chaque cellule comportant "les mêmes les lettres" on colorie en bleu ou "deux lettres différentes" on colorie en rouge ou "trois lettres différentes" on colorie en vert.

Merci d'avance,

1 réponse

  1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    Sans vba avec les MFC:

    http://www.bernardcordier.com/excel_mfc.htm
    0
    1. Myaziz
       
      Bonjour,

      Le problème c'est comment utiliser les MFC dan mon cas,
      Exemple: RFC BBB
      RRF AAB
      RRR ABD

      Comment le déclarer ? quelque soit la valeur de la cellule, si trois lettres identiques ou deux ou les trois différents, il attribue une couleur à chaque cas.

      Merci d'avance,
      0
    2. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Voilà je t'ai fait cela en vba. Mais je pense qu'avec une formule dans MFC cela doit pouvoir se faire.
      Mais moi et les formules ça fait 2!


      https://www.cjoint.com/c/HEeqmarA8pQ

      a adapter a ton environnement bien entendu!


      @+ Le Pivert
      0
    3. Myaziz
       
      J'ai essayé de comprendre ton code et l'adapter à mon cas sans succès :(, et ce que c'est la seule façon ? je ne peu pas tout simplement avoir un code simple, qui compte le nombre d’occurrences dans une case, et grâce à une boucle colorier les case en fonction du nombre d’occurrences par rapport au nombre de lettres ?

      Désolé j'ai un niveau assez Basic en VBA

      Merci encore,
      0
    4. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      je ne peu pas tout simplement avoir un code simple, qui compte le nombre d’occurrences dans une case, et grâce à une boucle colorier les case en fonction du nombre d’occurrences par rapport au nombre de lettres ?
      LOL
      C'est exactement ce que fait ce programme:

         Range("B" & i) = c 'affiche les lettres colonne B
         Range("C" & i) = nbOccurences(Range("B" & i), MaVal) 'affiche le nombre d'Occurences colonne C
      Next
          nombre = Application.Max(Columns(3)) 'nombre plus grand colonne C


      et ensuite:

      Select Case nombre
       Case Is = 3
      FL1.Cells(NoLig, NoCol).Interior.Color = 15773696 'bleu
       Case Is = 2
        FL1.Cells(NoLig, NoCol).Interior.Color = 255 'rouge
        Case Is = 1
        FL1.Cells(NoLig, NoCol).Interior.Color = 5287936 'vert
        Case Else
        FL1.Cells(NoLig, NoCol).Interior.Color = 15773696 'bleu
        End Select
      


      avec cela si tu n'arrives pas à l'adapter!
      0