Compter cellules de couleurs

Résolu
jc80 Messages postés 5063 Date d'inscription   Statut Membre Dernière intervention   -  
jc80 Messages postés 5063 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Dans ma colonne C j'ai des cellules de couleur jaune sans MFC 'j'aimerais
les compter.
Merci pour votre aide
Crdlt

4 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    fonction personnalisée avec 2 paramètres :
    plage : plage à prendre en compte
    couleur : cellule où récupérer la couleur à compter
    Function cellCouleurVide(plage As Range, couleur As Range)
        Dim pl As Range, c As Range, coul As Long
        Application.Volatile
        Set pl = Intersect(plage, Application.Caller.Worksheet.UsedRange)
        If Not pl Is Nothing Then
            coul = couleur.Interior.ColorIndex
            For Each c In pl
                If c = "" And c.Interior.ColorIndex = coul Then cellCouleurVide = cellCouleurVide + 1
            Next c
        End If
    End Function

    Faire F9 pour rafraichir si les couleurs changent.
    Si c'est pour qq milliers de lignes tu dis si c'est trop lent, on fera autrement.
    Eviter d'avoir plusieurs classeurs d'ouverts, ça donne parfois des surprises avec les fonctions personnalisées.
    eric

    En essayant continuellement, on finit par réussir. 
    Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
    En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
    1
  2. Raymond PENTIER Messages postés 58211 Date d'inscription   Statut Contributeur Dernière intervention   17 480
     
    Bonjour.

    Faire Trier par couleur : le nombre de cellules (avec des données) remplies de cette couleur s'affiche dans la barre d'état.
    0
  3. jc80 Messages postés 5063 Date d'inscription   Statut Membre Dernière intervention   1 443
     
    Bonjour

    J'ai trouvé en vba comment les compter ,mais il me faut seulement compter
    les cellules vides.
    Si vous avez une solution je suis preneur.
    Merci pour votre aide
    Cordialement
    0
    1. Raymond PENTIER Messages postés 58211 Date d'inscription   Statut Contributeur Dernière intervention   17 480
       
      Non : je ne sais pas compter des cellules d'une certaine couleur mais non renseignées ...
      Normalement tu devrais y arriver en continuant ta macro.
      0
  4. jc80 Messages postés 5063 Date d'inscription   Statut Membre Dernière intervention   1 443
     
    Bonjour eric

    Merci pour ta réponse
    J'ai un souci n’étant pas trés fort en vba je n'arrive pas a mettre ton code
    en place afin qu'il fonctionne normalement.
    Crdlt
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bonjour,

      il faut le mettre dans un module standard.
      Ensuite appeler la fonction dans une cellule :
      =cellCouleurVide(C2:C10;E1)

      E1 étant de la couleur à comptabiliser.
      eric
      0
      1. jc80 Messages postés 5063 Date d'inscription   Statut Membre Dernière intervention   1 443 > eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Merci beaucoup pour les indications
        Fonctionne super
        autre renseignement si tu peux
        comment mettre le mot "Merci" de C6 à DA6 sur 250 lignes mais une colonne sur 2
        exemple : C6:E6 G6
        Cordialement
        0
    2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      une possibilité parmis d'autres :
          Dim pl As Range, col As Long
          Set pl = [C6].Resize(250)
          For col = 3 To 105 Step 2
              Set pl = Union(pl, Cells(6, col).Resize(250))
          Next col
          pl.Value = "Merci"

      eric
      0
      1. jc80 Messages postés 5063 Date d'inscription   Statut Membre Dernière intervention   1 443 > eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Bonjour eric

        Merci superbe
        .Cordialement
        0