[Excel]Fonction compter mots en rouge

Bonjour

Est-il possible de compter uniqumt ds cellules qui contiennent ds mots en rouge. Du style NOMBRE.SI(A1:E1;"ok"(mais ls ok qui st en rouge seulemt)
de sorte si ds B1 et D1 il y a des "ok" en rouge , alors le résultat sera 2.

Merci

11 réponses

  1. ;-)

    Si le problème est de compter le cellules dont le contenu est en rouge, il n'y a pas de fonction Excel pour cela, par contre, en VBA Excel, tu peux récupérer...
    ---------------------------------------------------------------------------
    Sub CompterCellulesRouges()
    Dim Cpt, L
    Cpt = 0
    For L = 1 To ActiveCell.SpecialCells(xlCellTypeLastCell).Row
    If Cells(L, ActiveCell.Column).Font.ColorIndex = 3 Then Cpt = Cpt + 1
    Next
    MsgBox "Il y a dans cette colonne " & Cpt & " cellules dont le contenu est en rouge..."
    End Sub
    --------------------------------------------------------------------------

    ;-)

    Wild and Free
    3
    1. Contributeur
      Bonjour à tous.
      J'ai bien peur que tu ne puisses pas faire ça, non.
      A moins, bien évidemment, que la couleur du 'OK' soit déterminée automatiquement en fonction de la valeur d'une autre cellule. Mais au vu de ta question, il semblerait que ça ne soit pas le cas.
      Si j'ai bien compris, c'est toi qui choisis manuellement la couleur du texte lors de la saisie, c'est ça ?

       
         (:•Þ  Pitu
      1
      1. Modérateur
        Bien vu, Pitu.
        => MG : En effet, si la couleur est définie arbitrairement par l'utilisateur, pour "faire joli", y'a rien à faire.
        Par contre, si la couleur est définie en fonction de la valeur de cette cellule, générée par la "mise en forme conditionnelle", là il suffit de se baser sur les paramètres de cette mise en forme conditionnelle pour trouver le nombre de cellules correspondant.

        -=O(_BmV_)O=-    
              ||       ||  "SamTheEagle pétaradant"
        0
    2. Bonjour,
      De quoi parles tu ?

      Kalamit,
      La nuit, tous les chats sont gris. Pas les poulets ! :@)
      0
      1. je voudrais simplemt utiliser une fonction qui compte les cellules dans lesquelles il y a écrit : OK (mais slmt ls OK écrit en rouge)
        0
        1. Des cellules, y'en a un paquets ! Tu travailles sur un logiciel, lequel ???
          On ne peut pas deviner !

          Kalamit,
          La nuit, tous les chats sont gris. Pas les poulets ! :@)
          0
          1. avec XLS 97; uniquemt pour une plage de cell com je ls dit ds le 1er msge. Exem : ds la plge A1:E1 si OK est écrit en rge ds B1 et D1 alors le résult sera 2 (c à d ds cette plge il y a 2 cell qui st B1 et D1 dans lsquelles OK est écrit en rouge)
            0
            1. Désolé, je ne trouve pas de fonctions pour retourner la couleur du texte d'une cellule.
              C'est peut etre possible, mais je ne connais pas.

              Kalamit,
              La nuit, tous les chats sont gris. Pas les poulets ! :@)
              0
              1. Salut,
                Adaptes un peu ceci et dis-moi si ca répond à ta question (l'important étant évidemment le colorindex):

                Function Red()
                Dim j As Long

                For j = 1 To 4
                Range("A" & j).Select
                If Selection.Font.ColorIndex = 3 Then
                Cells("1", "B") = Cells("1", "B") + 1
                End If
                Next j

                End Function


                ciao

                dEUS
                There's no success like failure
                And failure's no success at all
                0
                1. Merci à tous apparemment je ne crois pas qu'il existe de fonctions, même imbriquées pour ce que je souhaite faire. Il faut que je passe par ls macros. Je vais donc me pencher dessus ce week-end, car je ne sais pas trop les manipuler.
                  0
                  1. Contributeur
                    Salut a tous,
                    Mon Pb est un peu différent à savoir que moi je veux compter le nombre de mot identiques (ex: OK) contenus dans une colonne.
                    J'ai essayé avec =somme.si en ayant pris soin de sélectionner les cellules auparavant mais je ne peux pas aller plus loin.

                    Je n'utilise excel que très rarement...

                    Merci d'avance pour vos lumières.
                    0
                    1. bonjour,

                      Peut-être NB.SI
                      0
                  2. Bonjour,

                    voici ma solution:

                    Cas: Je souhaitai connaître le nombre de dossiers en fonction de leur type dans une feuille "dossier"
                    Il suffit d'adapter

                    Dim ValAChercher
                    Dim MaCell As Range, PremCell As Range
                    ValAChercher = InputBox("Type de dossier :")
                    Cpt = 0
                    With Worksheets("dossiers").Range("c1:c50000")
                    Set MaCell = .Find(ValAChercher, LookIn:=xlValues)
                    If Not MaCell Is Nothing Then
                    Set PremCell = MaCell
                    Do
                    Cpt = Cpt + 1
                    Set MaCell = .FindNext(MaCell)
                    Loop While Not MaCell Is Nothing And Not MaCell.Address = PremCell.Address
                    End If
                    End With
                    MsgBox "Dossiers de " & ValAChercher & ": " & Cpt
                    End Sub
                    0