Calcul qui prend du temps

Bonjour à tous,

Voici un bout de code que j'ai écrit et qui permet de calculer un taux de croissance grâce à une formule:

Range("X1").Value = "%Croissance"
Dim Fin As Long
Const FORMULE As String = "=IF(AND($I2=$I1,$V2<>$V1),((SUMPRODUCT(($I$2:$I$?=$I2)*($V$2:$V$?=$V2)*($K$2:$K$?))-SUMPRODUCT(($I$2:$I$?=$I1)*($V$2:$V$?=$V1)*($K$2:$K$?)))/SUMPRODUCT(($I$2:$I$?=$I1)*($V$2:$V$?=V1)*($K$2:$K$?))),"""")"
Fin = Cells(Rows.Count, 1).End(xlUp).Row
If Fin < 2 Then Exit Sub
With Range("X2:X" & Fin)
 .Formula = Replace(FORMULE, "?", Fin)
 .SpecialCells(xlCellTypeFormulas, xlErrors).Value = ""
  .Value = .Value
  .NumberFormat = "0.00"
 End With

Cependant, cela mets trop de temps à s'éxécuter car j'ai 41000 lignes dans mon fichier de données

Est il possible d'ajuster un code avec des propriétés pour que le calcul se fasse plus vite ??

Cordialement,

Bonjour

As tu essayé la fonction somme.si ou somme.si.ens, selon le cas, à la place de somprod ?

Il me semble que les calculs sont plus rapides, ou plutôt l'affichage des résultats...

Cordialement

FINDRH

FINDRH,

Le problème c'est que SOMMEPRODUCT ne fait pas la même chose que SOMME.SI ou SOMME.SI.ENS

SOMMEPROD: Multiplie les valeurs correspondantes des matrices spécifiées et calcule la somme de ces produits.

Alors que SOMME.SI: Additionne les cellules spécifiées si elles répondent à un critère donné

et SOMME.SI.ENS: Ajoute les cellules d’une plage qui répondent à plusieurs critères.

Merci quand même de ton intervention

Cdlt,

Bonjour

melanie57 a écrit :

Le problème c'est que SOMMEPRODUCT ne fait pas la même chose que SOMME.SI ou SOMME.SI.ENS

FAUX (en partie)

SOMME.SI.ENS fait la même chose que SOMMEPROD mais n'est utilisable qu'à partir de 2007

Amicalement

Nad

Nad,

Tu vois bien que je travail sous Excel 2010 ! ^^

Cdlt,

Bonjour

Peux tu nous joindre un bout de fichier pour tester notre proposition, le somme si ens doit théoriquement regrouper 2 parties d'une même formule en une, dont tu multiplie ou divise le résultat, si j'ai bien compris....

Merci

FINDRH

Rechercher des sujets similaires à "calcul qui prend temps"