Fredox
XLDnaute Occasionnel
Bonjour,
Je cherche a faire une macro afin d'obtenir dans ma cellule la formule sommeprod sur une plage dynamique:
Je ne sais pas si on peut m'aider:
Avec Zone1 et Zone2, je défini mes deux plages dynamique.
Cela fonctionne bien si je veux le simple résultat, en revanche, pour écrire la formule je n'y arriva pas.
Une idée ?
Merci
Je cherche a faire une macro afin d'obtenir dans ma cellule la formule sommeprod sur une plage dynamique:
Je ne sais pas si on peut m'aider:
VB:
Sub Test2()
Set Sh_Active = ActiveSheet
Dlig = Range("C" & Rows.Count).End(xlUp).Row
With ActiveSheet.Cells
Set cellule = .Find("Qté.", LookIn:=xlValues)
If Not cellule Is Nothing Then ColQ = cellule.Column
End With
Col = ActiveCell.Column
Set Zone1 = Range(Cells(9, ColQ), Cells(Dlig, ColQ))
Set Zone2 = Range(Cells(9, Col), Cells(Dlig, Col))
Cells(4, Col).NumberFormat = "#,##0.00 $"
' Fonctionne -->> Affiche le résultat
Cells(4, Col).Formula = Application.WorksheetFunction.SumProduct(Zone1, Zone2)
' Ne fonctionne pas, j'aimerais que dans la cellule s'affiche la formule, non le résultat
Cells(4, Col + 1).Formula = "=sommeprod(" & Zone1 & "*" & Zone2 & ")"
End Sub
Avec Zone1 et Zone2, je défini mes deux plages dynamique.
Cela fonctionne bien si je veux le simple résultat, en revanche, pour écrire la formule je n'y arriva pas.
Une idée ?
Merci