Formulaarray

Bonjour le forum,

Je rencontre un problème avec la fonction range.formulaarray.

Ma formule est la suivante :

Formule = "=sum((R(1)C(-2):R" & NbLi - 1 & "C(-2))*(R(1)C:R" & NbLi - 1 & "C))" & _

"-sum(--(R" & cph & "C2:R" & NbLi - 1 & "C2="""")*R" & cph & "C10:R" & NbLi - 1 & "C10*R" & cph & "C12:R" & _

NbLi - 1 & "C12)*RC(-2)"

.cells(cph-1,12) = formule

Ce qui donne, une fois compilée

formule = "=sum((R(1)C(-2):R28C(-2))*(R(1)C:R28C))-sum(--(R7C2:R28C2="")*R7C10:R28C10*R7C12:R28C12)*RC(-2)"

Et là j'ai une bonne vieille erreur 1004.

Je galère un peu à débugguer, puisque la formule est en anglais.

Je sais que la fonction traduite en français fonctionne dans excel (en remplaçant les "R" par des "L", les "," par des ";", et les "sum" par des "somme"

Est-ce que qqn pourrait m'aider ?

Merci d'avance !

Bonjour

Il faut des [] pour les positions relatives des lignes et des colonnes

Et si c'est une formule matricielle

formule = "=sum((R[1]C[-2]:R" & nbli - 1 & "C[-2])*(R[1]C:R" & nbli - 1 & "C))" & _
          "-sum(--(R" & cph & "C2:R" & nbli - 1 & "C2="""")*R" & cph & "C10:R" & nbli - 1 & "C10*R" & cph & "C12:R" & _
          nbli - 1 & "C12)*RC[-2]"
Cells(cph - 1, 12).FormulaArray = formule

Merci Banzaï !

J'en étais arrivé à la même conclusion avec la ruse du coyote :

entrer la formule en français dans une cellule, et la récupérer via VBA en anglais.

Effectivement, j'avais tapé un peu vite mon msg, et oublié le ".formulaarray"

C'est bien là le bug !

Rechercher des sujets similaires à "formulaarray"