Carnage029
XLDnaute Occasionnel
Hello tout le monde
Je suis en train d'essayer de creer une fonction vba pour aller plus vite (et plus simplement) que des sumproduct matriciel avec des formules dans les cellules plus longues que mon ecran...
J'avais pense a faire des filtres pour que la formule soit facilement adaptable et simple a transposer sur d'autres donnees.
Le code est le suivant:
Pourtant ca ne fonctionne pas ca me fait pas les differents tris comme il le faut
Thanks a lot a vous
Je suis en train d'essayer de creer une fonction vba pour aller plus vite (et plus simplement) que des sumproduct matriciel avec des formules dans les cellules plus longues que mon ecran...
J'avais pense a faire des filtres pour que la formule soit facilement adaptable et simple a transposer sur d'autres donnees.
Le code est le suivant:
Code:
Function FilterAndSum(myrange As Range, sumRange As Range, Optional ByVal myField1 As Variant, Optional ByVal myCriteria1 As Variant, Optional ByVal myField2 As Variant, Optional ByVal myCriteria2 As Variant, Optional ByVal myField3 As Variant, Optional ByVal myCriteria3 As Variant)
myrange.AutoFilter
myrange.AutoFilter Field:=myField1, Criteria1:="=" & myCriteria1
myrange.AutoFilter Field:=myField2, Criteria1:="=" & myCriteria2
myrange.AutoFilter Field:=myField3, Criteria1:="=" & myCriteria3
mysum = Sum_Visible_Cells(sumRange)
FilterAndSum = mysum
End Function
Function Sum_Visible_Cells(Cells_To_Sum As Object)
Application.Volatile
For Each cell In Cells_To_Sum
If cell.Rows.Hidden = False Then
If cell.Columns.Hidden = False Then
Total = Total + cell.Value
End If
End If
Next
Sum_Visible_Cells = Total
End Function
Pourtant ca ne fonctionne pas ca me fait pas les differents tris comme il le faut
Thanks a lot a vous