Formule matricielle VBA

Bonjour à tous et à toutes!

Meilleurs voeux pour 2017!

Je suis à la recherche du code pour cette formule qui marche très bien sous excel mais qui bouffe énormément de ressources et du coup ralentit mon projet.

upload 2017 1 4 10 4 1

- La feuille RECAP est celle de la formule. Les seules références utiles dans cette feuille sont 2 références absolues ( une fixe en $A$1 et l'autre mobile en fonction de la colonne de calcul, mais la ligne figée est $5 à partir de la colonne C).

- Centralisation est le tableau de recherche

Je voudrais renseigner mon tableau avec du code pour gagner en temps d'exec..

Merci beaucoup!

Jeanba

Fichier oublié...

Désolé

Bonjour à tous, voici la solution qu'un XLNaute d'un autre forum a proposée si ça peut aider quelqu'un d'autre rencontrant la même difficulté que moi. Et ...ça fonctionne à merveille!

Sub CalculerRecap()
'=SOMME(SI((Centralisation!$A$3:$A$650=RECAP!$A$1)*(Centralisation!$B$3:$B$650=RECAP!$B8) _
    ' *(Centralisation!$E$3:$E$650=RECAP!Q$5);Centralisation!$F$3:$G$650))
Dim TE(), LE&, TS(1 To 31, 1 To 25), LS&, CS&, Mois#
TE = Centralisation.UsedRange.Value
Mois = RecapMois.[A1].Value
For LE = 3 To UBound(TE, 1)
    If TE(LE, 1) = Mois Then
        LS = TE(LE, 2): CS = TE(LE, 5)
        TS(LS, CS) = TS(LS, CS) + TE(LE, 6) + TE(LE, 7)
    End If: Next LE
RecapMois.[C6:AA36].Value = TS
End Sub

Merci à tous!

Jeanba

Rechercher des sujets similaires à "formule matricielle vba"