sumproduct avec superieur ou égal

CHRISTOPHEAGPM

XLDnaute Nouveau
Bonjour le forum,

L'un d'entre vous peut t'il m'expliquer comment transformer la dernière partie de la formule suivante en code VBA ?


Code:
=SOMMEPROD((récapitulatif!$G$10:$G$1099='Production HA & Fam'!F$3)*(récapitulatif!$I$10:$I$1099='Production HA & Fam'!$C7)*(récapitulatif!$H$10:$H$1099='Production HA & Fam'!$B$4)*(récapitulatif!$BH$10:$BH$1099>=1))


En sachant que :

Code:
    Dim rng As Range, M As Integer

    With Worksheets("récapitulatif")
    
    M = .Range("G10").End(xlUp).Row
       
        
        Set rng = .Range("G1099:G" & M)
        rng.Name = "ColG"
        Set rng = .Range("I1099:I" & M)
        rng.Name = "ColI"
        Set rng = .Range("H1099:H" & M)
        rng.Name = "ColH"
        Set rng = .Range("BH1099:BH" & M)
        rng.Name = "ColBH"




Je bute sur la partie

Code:
(récapitulatif!$BH$10:$BH$1099>=1))

Pour le reste, grace à vous j'ai trouvé la solution suivante (avec une boucle) :

Code:
 E = .Range("f3"): C = .Range("C" & L)
            .Cells(L, 6) = Evaluate("sumproduct((ColG=""" & E & """)*(ColI=""" & C & """)*(ColH=""" & B & """))")
 

Bebere

XLDnaute Barbatruc
Re : sumproduct avec superieur ou égal

bonjour Christophe
essaye ce qui suit

Code:
  With Worksheets("récapitulatif")
    M = .Range("G10").End(xlUp).Row
        Set rng = .Range("G10:G" & M)
        rng.Name = "ColG"
        Set rng = .Range("I10:I" & M)
        rng.Name = "ColI"
        Set rng = .Range("H10:H" & M)
        rng.Name = "ColH"
        Set rng = .Range("BH10:BH" & M)
        rng.Name = "ColBH"
End With
critere1 = Worksheets("Production HA & Fam").Range("B4")
critere2 = Worksheets("Production HA & Fam").Range("C7")
critere3 = Worksheets("Production HA & Fam").Range("F3")
'si les critères sont numéric
s = Evaluate("SUMPRODUCT((colg =" & critere3 & ") * (coli =" & critere2 & ") * (colh =" & critere1 & ") * (colbh >= 1))")
'si les critères sont des chaînes
s = Evaluate("SUMPRODUCT((colg =""" & critere3 & """) * (coli =""" & critere2 & """) * (colh =""" & critere1 & """) * (colbh >= 1))")

à bientôt
 

Statistiques des forums

Discussions
312 559
Messages
2 089 603
Membres
104 224
dernier inscrit
Brilma