Calcul somme avec prise en compte de la couleur de la police

Bonjour,

Je souhaite caculer la somme des montants se trouvant dans plusieurs cellules situées dans la même colonne avec une particularité : les cellules dont la couleur du texte est en noir seront comptabilisées alors que celles dont la couleur du texte est rouge seront ignorées.

Pouvez-vous m'aider à placer la formule (ou code) appropriée dans la cellule qui me donnera la somme souhaitée ?

J'ai joint le fichier concerné en pièce jointe.

D'avance, un grand merci pour votre aide.

Bien cordialement,

Harlem

68liste.xlsx (12.50 Ko)

Bonjour,

Fonction personnalisée (version minimale) :

Function SOMMETXTNOIR(plage As Range)
    Dim S, c As Range
    For Each c In plage
        If IsNumeric(c) Then
            If c.Font.Color = vbBlack Then S = S + c.Value
        End If
    Next c
    SOMMETXTNOIR = S
End Function

A placer dans un module Standard, et utiliser comme toute autre fonction d'Excel.

Cordialement.

bonjour

ça ce fera avec une macro mais quelle est la raison qui les mets en rouge car on peux peut etre faire autrment

cordialement

Suite Mail : Voir fichier.

Pour accéder à l'éditeur VBA, faire : Alt+F11.

Cordialement.

88harlem-liste.xlsm (19.58 Ko)

Bonjour à toutes et à tous,

Concernant le même sujet !

Afin de suivre l'avancement de mes projets, je souhaite comptabiliser le nombre de dates réelles (texte noir) et ne pas comptabiliser les dates prévisionnelles en rouge (celles-ci sont purement à titre indicatif).

J'ai vu plusieurs sujets du même type, en 2008, 2013 ... je n'ai pas trouver la solution alors je me permets de relancer celui-ci qui en plus est récent.

Je suis une bille en macro ( vraiment nul). Est-il possible pour vous de me créer les formules ou codes qui vont bien ?

ci-joint vous trouverez un tableau succinct de mon suivi.

les formules pourront-elles évoluer facilement si la plage ou les couleurs sont modifiées ?

Je vous remercie par avance pour votre aide !

Bonjour,

Tu peux facilement faire une adaptation de la fonction indiquée dans le sujet :

Function NBTXTNOIR(plage As Range)
    Dim N%, c As Range
    Application.Volatile
    For Each c In plage
        If c.Font.Color = vbBlack Then N = N + 1
    Next c
    NBTXTNOIR = N
End Function

Mais la prochaine fois, ouvre ton propre sujet... !

Cordialement.

bien, je te remercie.

Est ce que le format des cellules est important pour utiliser correctement la fonction ?

De plus, j'ai un gros soucis, j'ai essayé plusieurs codes ce matin a partir de plusieurs exemples dans divers forum.

Maintenant des que je veux essayer la nouvelle fonction, j'ai un message d'erreur qui évoque qu'un fichier Excel utilisé ce matin n'est pas trouvable ... alors que la nouvelle fonction est bien associé a à une macro de mon tableur.

je ne comprends pas pourquoi la macro fait référence à un fichier exemple de ce matin. ce même fichier je l'ai supprimé mais apparemment il y a encore une trace de celui-ci quelque part .....

je ne sais pas si c'est compréhensible, moi même je ne comprends pas trop ce qu'il se passe

merci par avance pour votre éclaircissement

peut etre plus simple avec des images

ci-joint vous trouverez

une capture d'écran de ma macro, avec je pense l'unique code

et une seconde capture d'écran avec le message d'erreur qui fait référence à un fichier exemple, télécharger sur internet mais que j'ai supprimé depuis. J'avais activé la macro de ce fichier pour voir le résultat mais ca ne me convenait pas alors je l'ai supprimé.

je ne comprends pas pourquoi, ce message d'erreur apparaît a chaque fois que je rentre la nouvelle forumule ...

capture vba macro nbtextnoir

Tu as peut-être des formules qui y font référence ?

je ne vois pas ou !

j'ai même ouvert un autre fichier, bien plus ancien, j'ai rentré le code que tu m'as donné et j'ai essayé. j'ai le même message d'erreur qui apparaît.

je suis dégouté, parce que ta formule/code correspond bien a mes attentes et la je suis clairement embeté de devoir acquiter le message d'erreur a chaque fois


est-il possible de visionner l'ensemble des macros éditées ? (parmi tous les classeurs de l'ordi)


Nounours28.xls c'est un fichier de Nad (Modérateur du forum) quand il a répondu à un post le 03 fevrier 2011 au sujet "Valeur si texte de couleur"

svp aidez moi a résoudre

Bien. J'ai redémarré l'ordinateur et plus de soucis avec le fichier perturbateur.

MFerrand, puis-je te questionner à nouveau au sujet de ton code ?

Ca fonctionne presque comme je voudrai

La formule compte bien les cellules avec du texte en noir. mais elle prend aussi en compte les cellules vides... peut être parce que le format automatique de la police est noir ?

est-il possible d'améliorer le code ? ou est-il possible de changer la couleur et mettons compter les cellules avec du texte bleu ?

Merci par avance pour ton retour

allez, une nouvelle question,

comment peut-on actualiser la macro ?

c'est à dire, si je modifie la couleur des mes textes, le nombre de mes cellules avec le texte en noir ne varie pas automatiquement. pour l'instant il faut que je retape la formule =NBTEXTNOIR(plage) pour que le résultat s'actualise.

est-il possible d'actualiser toute la feuille, toutes le formules en une seule fois ? ou automatiquement ?

merci

Function NBTXTNOIR(plage As Range)
    Dim N%, c As Range
    Application.Volatile
    For Each c In plage
        If c <> "" And c.Font.Color = vbBlack Then N = N + 1
    Next c
    NBTXTNOIR = N
End Function

Voilà pour effectivement tenir compte du contenu de la cellule.

La fonction se recalcule lorsque le recalcul intervient.

Mais un changement de couleurs ne le provoque pas, il faut une changement de valeurs.

Sinon F9 pour le lancer manuellement.

Cordialement.


Function NBTXTNOIR(plage As Range)
    Dim N%, c As Range
    Application.Volatile
    For Each c In plage
        If c <> "" And c.Font.Color = vbBlack Then N = N + 1
    Next c
    NBTXTNOIR = N
End Function

Voilà pour effectivement tenir compte du contenu de la cellule.

La fonction se recalcule lorsque le recalcul intervient.

Mais un changement de couleurs ne le provoque pas, il faut une changement de valeurs.

Sinon F9 pour le lancer manuellement.

Cordialement.

Bien. Merci beaucoup.

Ce n'est pas moi le créateur du sujet. qui est ce qui peut le déclarer résolu ?

Rechercher des sujets similaires à "calcul somme prise compte couleur police"