bonjour,
j'ai un tableau de 10 lignes et 30 colonnes. Dans chaque cellule il peut y avoir soit :T, TD, M ou C. le calcule de chaque lettre est facile à réaliser. Maintenant, et c'est là que ça ce corse, il peut y avoir des chiffres en rouge et en noir. Est il possible de faire la somme de chaque chiffre en rouge et la somme de chaque chiffre en noir. j'ai essayé diverses formules, et j'essaye toujours, mais là je commence à sécher.
merci d'avance de votre aide.
rgstma
Function Somme_Couleur(Plage As Range, Cellule As Range) As Double
Dim Couleur As Integer
Dim Cel As Range
Couleur = Cellule.Font.ColorIndex
For Each Cel In Plage
If Cel.Font.ColorIndex = Couleur Then
Somme_Couleur = Somme_Couleur + Cel.Value
End If
Next Cel
End Function
Puis il suffit de rentrer dans la cellule ou tu souhaites avoir le résultat =Somme_Couleur(Plage;Cellule de ref)
Le cellule de ref doit cependant avoir le texte de la couleur dont tu souhaites additionner les chiffres.
Function Somme_Couleur(Plage As Range, Cellule As Range) As Double
Dim Couleur As Integer
Dim Cel As Range
Couleur = Cellule.Font.ColorIndex
For Each Cel In Plage
If Cel.Font.ColorIndex = Couleur Then
Somme_Couleur = Somme_Couleur + Cel.Value
End If
Next Cel
End Function
Puis il suffit de rentrer dans la cellule ou tu souhaites avoir le résultat =Somme_Couleur(Plage;Cellule de ref)
Le cellule de ref doit cependant avoir le texte de la couleur dont tu souhaites additionner les chiffres.
Bonjour,
c'est ce que je cherchais pour mes colonnes "heures nuit" et "heures sup", mais si je met une lettre ça ne fonctionne plus, il faut que je rajoute un "somme si" je pense.
Bonjour,
c'est ce que je cherchais pour mes colonnes "heures nuit" et "heures sup", mais si je met une lettre ça ne fonctionne plus, il faut que je rajoute un "somme si" je pense.
Hello, il faut rajouter une condition pour determiner si la valeur est un nombre à savoir And IsNumeric(Cel)
Code:
Function Somme_Couleur(Plage As Range, Cellule As Range) As Double
Dim Couleur As Integer
Dim Cel As Range
Couleur = Cellule.Font.ColorIndex
For Each Cel In Plage
If Cel.Font.ColorIndex = Couleur And IsNumeric(Cel) Then
Somme_Couleur = Somme_Couleur + Cel.Value
End If
Next Cel
End Function