Faire somme suivant motif et texte
Mag86
-
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite créer une fonction sous VBA me permettant de faire la somme des cellules de la colonne "P" si :
- ces cellules ont un motif
- la cellule sur la même ligne mais dans la colonne "L" contient le texte "toto"
J'ai tenté ça mais ça ne fonctionne pas et je tourne en rond malgres que je suis persuadée que c'est simple...
Merci pour votre aide!
PS : J'espère que vous pourrez lire le code correctement car j'ai bien mis les balises "code" mais sur mon IPhone je ne vois pas la différence...
Je souhaite créer une fonction sous VBA me permettant de faire la somme des cellules de la colonne "P" si :
- ces cellules ont un motif
- la cellule sur la même ligne mais dans la colonne "L" contient le texte "toto"
J'ai tenté ça mais ça ne fonctionne pas et je tourne en rond malgres que je suis persuadée que c'est simple...
Function SommeCouleur(PlageSomme As Range, PlageCouleur As Range, ValTxt) As Variant Dim Cel As Range Dim Som As Double Application.Volatile For Each Cel In PlageSomme If Cel.Interior.Pattern=PlageCouleur.Interior.Pattern And Cel.Cells(Cel, 12)=ValTxt Then Som=Som+Cel End If Next SommeCouleur=Som End Function
Merci pour votre aide!
PS : J'espère que vous pourrez lire le code correctement car j'ai bien mis les balises "code" mais sur mon IPhone je ne vois pas la différence...
2 réponses
-
Bonjour
essaies ceciIf Cel.Interior.Pattern = PlageCouleur.Interior.Pattern And ActiveSheet.Cells(Cel.Row, 12) = ValTxt Then
bonne suite -
Bonjour,
En complement de ccm81, j'ai vire PlageCouleur parce que d'apres l'enonce du sujet, il n'est pas dit que les cellules colonne P doivent avoir un motif particulier.
A voir
Function SommeCouleur(PlageSomme As Range, Valtxt) As Variant Dim Cel As Range Dim Som As Double Application.Volatile For Each Cel In PlageSomme 'Cellule Lx=Valtxt et Cellule Px style de motif <> de pas de Style If ActiveSheet.Cells(Cel.Row, 12) = Valtxt And Cel.Interior.Pattern <> xlNone Then Som = Som + Cel End If Next SommeCouleur = Som End Function
Bonne suite