Bonjour
Je viens vers vous pour un peu d'aide, j'ai laissé excel écrire la macro sur une formule hyper longue mais je ne peux faire autrement.
La formule excel fonctionne correctement sans macro.
Hors lorsque je lance la macro il me renvoi l'erreur 1004 et la mes compétences sont limitées, je ne comprends rien.
Voici ma formule excel écrite en N2 :
=SI(NB.SI(B2;"HJ*");D2*J2;
SI(ET(D2<E2;D2<>0);H2+(I2*(D2-1));
SI(ET(D2<E2;D2=0);H2;
SI(ET(D2>F2;L2=0);J2-(M2*G2);
SI(ET(D2>F2;L2="");J2-(M2*G2);
SI(ET(D2>F2;L2<>0);L2-(M2*G2);
SI(ET(D2>=E2;D2<=F2;(D2-E2)<7);J2;
SI(ET(D2>=E2;D2<=F2;(D2-E2)>=7;(D2-E2)<14);K2;
SI(ET(D2>=E2;D2<=F2;(D2-E2)>=14;(D2-E2)<=21);L2;
"NA")))))))))
Et j'ai vraiment besoin de toutes ces données car il s'agit d'un fichier de centaines de ligne qui peuvent rentrer dans chacune des conditions.
Et voici la macro :
Range("N2").Select
ActiveCell.FormulaR1C1 = _
"=IF(COUNTIF(RC[-12],""HJ*""),RC[-10]*RC[-4]," & Chr(10) & "IF(AND(RC[-10]<RC[-9],RC[-10]<>0),RC[-6]+(RC[-5]*(RC[-10]-1))," & Chr(10) & "IF(AND(RC[-10]<RC[-9],RC[-10]=0),RC[-6]," & Chr(10) & "IF(AND(RC[-10]>RC[-8],RC[-2]=0),RC[-4]-(RC[-1]*RC[-7])," & Chr(10) & "IF(AND(RC[-10]>RC[-8],RC[-2]=""""),RC[-4]-(RC[-1]*RC[-7])," & Chr(10) & "IF(AND(RC[-10]>RC[-8],RC[-2]<>0),RC[-2]-(RC[-1]*RC[-7])," & Chr(10) & "IF(AND(RC[-10]>=RC[-9],RC[-10]<=RC[-8],(RC[-10]" & _
"<7),RC[-4]," & Chr(10) & "IF(AND(RC[-10]>=RC[-9],RC[-10]<=RC[-8],(RC[-10]-RC[-9])>=7,(RC[-10]-RC[-9])<14),RC[-3]," & Chr(10) & "IF(AND(RC[-10]>=RC[-9],RC[-10]<=RC[-8],(RC[-10]-RC[-9])>=14,(RC[-10]-RC[-9])<=21),RC[-2]," & Chr(10) & """NA"")))))))))"
Range("N3").Select
Merci d'éclairer mes lumières car la je ne trouve pas de solution. Et pour information mon excel est sur mon lieux de travail avec accès limiter donc aucune manipulation possible dans C://programme files...
Après peut être qu'il est possible de simplifier la formule mais je ne suis pas assez expérimentée.
Merci à vous par avance.
Lamarie