macro - appliquer formule et resultat

VBA_DEAD

XLDnaute Occasionnel
Bonjour,

j`ai une formule que j`essaie de coller par macro.
1/ j`arrive pas a coller la formule par macro - je ne vois pas le bug ds mon code?

La formule que j`applique ds mon file:
=SUMPRODUCT(($A$2:$A$4991=$A2)*($C$2:$C$4996=$C2),$M$2:$M$4996)/(SUMIF($C$2:$C$4996,$C2,$M$2:$M$4996))

par macro, j`ai mis le code suivant:

Sub STEP3()
Dim Lig30 As Integer

Sheets("DATA").Activate

With Application
.Calculation = xlManual
.MaxChange = 0.001
End With


'**************************
'Formule SUMPRODUCT

' colonne M est ma colonne de reference ou j`ai des donnees en EURO

Lig30 = Sheets("DATA").Range("m65000").End(xlUp).Row
Set Base4 = Sheets("DATA").Range("m2:m" & Lig30)

For Each Cell In Base4
If Cell.Value <> "" Then
Cell.Offset(0, 2) = "=SUMPRODUCT(($A$2:$A$10000=RC[-12])*($C$2:$C$10000=RC[-10]),$M$2:$M$10000)/SUMIF($C$2:$C$10000,RC[-12],$M$2:$M$10000)"
End If
Next Cell



le code bloque a ce niveau
Cell.Offset(0, 2) = "=SUMPRODUCT(($A$2:$A$10000=RC[-12])*($C$2:$C$10000=RC[-10]),$M$2:$M$10000)/SUMIF($C$2:$C$10000,RC[-12],$M$2:$M$10000)"


2/ puis je plutot avoir le resultat en direct plutot que coller la formule pour eviter d`attendre que le calcul se fasse apres que la macro ait colle la formule.
si j`avais directement le chiffre, ca serait plus rapide et plus professionnel je pense

merci pour votre aide
VBA_DEAD
 

Bebere

XLDnaute Barbatruc
Re : macro - appliquer formule et resultat

bonjour Vba_dead
essaye ce code
j'ai supposé que A1,C1 contenaient les valeurs à traiter
avec un bout de fichier plus facile

Sub STEP3()
Dim Lig30 As Integer

Sheets("DATA").Activate

With Application
.Calculation = xlManual
.MaxChange = 0.001
End With


'**************************
'Formule SUMPRODUCT

' colonne M est ma colonne de reference ou j`ai des donnees en EURO

Lig30 = Range("m65000").End(xlUp).Row
Set Base4 = Range("m2:m" & Lig30)

For Each Cell In Base4
'If Cell.Value <> "" Then
Cell.Offset(0, 2) = Evaluate("SUMPRODUCT(($A$2:$A$" & Lig30 & "=A1)*($C$2:$C$" & Lig30 & "=C1)*$M$2:$M$" & Lig30 & ")/SUMIF($C$2:$C$" & Lig30 & ",A1,$M$2:$M$" & Lig30 & ")")
'End If
Next Cell
End Sub

à bientôt
 

VBA_DEAD

XLDnaute Occasionnel
Re : macro - appliquer formule et resultat

Bonjour bebere,

j`espere que ca va. Merci de ton aide.

J`ai applique la formule ds l`exemple joint et ca donne rien. :eek:

je ne vois pas ce qui bugue - peut etre la partie =A1 pose probleme

merci

VBA_DEAD
 

Pièces jointes

  • macro.xls
    41 KB · Affichages: 42
  • macro.xls
    41 KB · Affichages: 51
  • macro.xls
    41 KB · Affichages: 48

Bebere

XLDnaute Barbatruc
Re : macro - appliquer formule et resultat

VbaDead
diviseur=0 d'où l'erreur
essaye ce code
à bientôt
 

Pièces jointes

  • macroVbaDead.xls
    45 KB · Affichages: 57
  • macroVbaDead.xls
    45 KB · Affichages: 57
  • macroVbaDead.xls
    45 KB · Affichages: 56

Bebere

XLDnaute Barbatruc
Re : macro - appliquer formule et resultat

bonjour VbaDead
quand le soleil brille tout va bien
revu et corrigé
à bientôt
 

Pièces jointes

  • macroVbaDead.xls
    45 KB · Affichages: 60
  • macroVbaDead.xls
    45 KB · Affichages: 58
  • macroVbaDead.xls
    45 KB · Affichages: 66

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
313 030
Messages
2 094 571
Membres
106 054
dernier inscrit
Mohajer