Bonjour
alors pour vous répondre la ligne en dessous c'est juste le numéro du mois mais je ne suis pas encore sur de m'en servir. et oui tous les mois j'insère une colonne avant moyenne et je met le mois.
Mon problème réside dans le fait de faire dérouler la formule actuellement placé en BU2 mais qui dans la logique - on est bien d'accord - devrait être en BU3 puis déroule en bas. Tous les mois j'insère une colonne avec la moyenne je viens mettre la formule en ligne 3 dans l'exemple en BU3 puis je tire ma formule.
Ensuite mes moyennes elle je vais compléter ma macro avec du RC et cela va le faire tout seul
Donc désolé si je n'es pas été clair depuis le début. Pas toujours facile d'expliquer à l'écrit. Ma recherche est donc de pouvoir étirer la formule mais de manière variable puisque la colonne va augmenter de 1. LA formule reste la même on est bien d'accord mais l'étirement lu avec un autofill va forcément changer. Par exemple sur septembre cela va être BU 3 : BU 200 mais le mois prochain donc octobre cela sera BV3 BV : 200 puisque tout va se décaler d'un cran sur la droite. LA formule reste la même c'est la macro qui doit changer. Or l'idée de la macro c'est qu'elle marche tous les mois pareil.
Ci joint mon code en cours en travail bien sur
Range("A1").Select
Selection.End(xlToRight).Select
ActiveCell.Offset(0, -10).Select
Selection.EntireColumn.Select
Selection.Insert
ActiveCell.FormulaR1C1 = "=RC[-1]+31"
ActiveCell.Offset(1, 0).Select
ActiveCell.FormulaLocal = "=SI(D2=""KG"";(SOMME.SI([1.xlsx]A!$A$6:$N$4000;A2;[1.xlsx]A!$N$6:$N$4000)-SOMME.SI([2.xlsx]A!$A$6:$N$4000;A2;[2.xlsx]A!$N$6:$N$4000))+SOMME.SI([receptions.xlsx]A!$G$2:$L$65536;A2;[receptions.xlsx]A!$L$2:$L$500);(SOMME.SI([1.xlsx]A!$A$6:$N$4000;A2;[1.xlsx]A!$L$6:$L$4000)-SOMME.SI([2.xlsx]A!$A$6:$N$4000;A2;[2.xlsx]A!$L$6:$L$4000))+SOMME.SI([receptions.xlsx]A!$G$2:$L$65536;A2;[receptions.xlsx]A!$K$2:$K$500))"
'dérouler la formule ?
ActiveCell.Offset(1, 1).Select
'moyenne annuelle ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-12]:RC[-1])"
'moyenne 3 mois ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-4]:RC[-2])"
'moyenne 3 mois n-1 ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-17]:RC[-15])"
' Range("BY3").Select
' ActiveCell.FormulaR1C1 = _
"=IFERROR(IFERROR(IF(OR(RC[-1]>=50%,RC[-1]<=-50%),RC[-3],(RC[-16]*(1+RC[-1]))),RC[-3]),0.001)"
' Range("BZ3").Select
' ActiveCell.FormulaR1C1 = _
"=IFERROR(IFERROR(IF(OR(RC[-2]>=50%,RC[-2]<=-50%),RC[-4],(RC[-16]*(1+RC[-2]))),RC[-4]),0.001)"
' Range("CA3").Select
' ActiveCell.FormulaR1C1 = _
"=IFERROR(IFERROR(IF(OR(RC[-3]>=50%,RC[-3]<=-50%),RC[-5],(RC[-16]*(1+RC[-3]))),RC[-5]),0.001)"
' Range("CB3").Select
'ActiveCell.FormulaR1C1 = _
"=IFERROR(IFERROR(IF(OR(RC[-4]>=50%,RC[-4]<=-50%),RC[-6],(RC[-16]*(1+RC[-4]))),RC[-6]),0.001)"
Merci @LouReed pour le code. Seulement il fonctionne à mon avis pour la dernière colonne enfin si j'ai bien compris
Si vous avez des idées pour m'aider. Merci et Bonne journée à tous