evil_gouki_x
XLDnaute Nouveau
Salut j'ai une petite question sur une erreur dans VBA.
Je vous donne le contexte:
Sur ma feuille Excel j'ai la formule:
=INDEX(B!$B$8:$AAK$1187,$B$2,2)
mais comme dans la case de la formule il m'affiche un "0" s'il ne trouve pas les valeurs, j'ai voulu rendre le "0" invisible. j'ai donc transforme la formule ci dessus en :
=IF(INDEX(B!$B$8:$AAK$1187,$B$2,2)=0,"",INDEX(B!$B$8:$AAK$1187,$B$2,2))
Voila.
Jusque la pas de probleme.
j'ai voulu mettre ce code sur VBA et j'ai donc fait:
le Code est ecrit dans un MODULE et j'appelle Sub Sample_XlsDwl dans un autre programme Sub se trouvant sur une FEUILLE1 grace a :
Jusque la tout va bien mais mon probleme survient quand je veux mettre en VBA la Formule =IF(INDEX(B!$B$8:$AAK$1187,$B$2,2)=0,"",INDEX(B!$B$8:$AAK$1187,$B$2,2)).
Je fais alors :
Et la ca m'affiche une erreur "1004".
Je ne comprend vraiment pas pourquoi. pourtant theoriquement ca devrait fonctionner...
J'ai essaye avec FormulaArray, FormulaR1C1, j'ai meme tente un FormulaHidden. mais rien j'ai toujours la meme erreur.
Ou est ce que le truc plante???? est ce que quelqu'un pourrait me donner la voix a suivre.
je suis sur excel 2007 (en version jap mais c pas bien grave)
Et j'ai un Module Sample_XlsDwl et un Sub dans une Feuille nommee "SHEET1".
une petite idee du probleme?
je vous remercie d'avance
E_G_X
Je vous donne le contexte:
Sur ma feuille Excel j'ai la formule:
=INDEX(B!$B$8:$AAK$1187,$B$2,2)
mais comme dans la case de la formule il m'affiche un "0" s'il ne trouve pas les valeurs, j'ai voulu rendre le "0" invisible. j'ai donc transforme la formule ci dessus en :
=IF(INDEX(B!$B$8:$AAK$1187,$B$2,2)=0,"",INDEX(B!$B$8:$AAK$1187,$B$2,2))
Voila.
Jusque la pas de probleme.
j'ai voulu mettre ce code sur VBA et j'ai donc fait:
Code:
Sub Sample_XlsDwl()
Range("B7").Formula = "=INDEX(B!$B$8:$AAK$1187,$B$2,2)"
End Sub
le Code est ecrit dans un MODULE et j'appelle Sub Sample_XlsDwl dans un autre programme Sub se trouvant sur une FEUILLE1 grace a :
Code:
Call Sample_XlsDwl
Jusque la tout va bien mais mon probleme survient quand je veux mettre en VBA la Formule =IF(INDEX(B!$B$8:$AAK$1187,$B$2,2)=0,"",INDEX(B!$B$8:$AAK$1187,$B$2,2)).
Je fais alors :
Code:
Sub Sample_XlsDwl()
Range("B7").Formula = "=IF(INDEX(B!$B$8:$AAK$1187,$B$2,2)=0,"",INDEX(B!$B$8:$AAK$1187,$B$2,2))"
End Sub
Et la ca m'affiche une erreur "1004".
Je ne comprend vraiment pas pourquoi. pourtant theoriquement ca devrait fonctionner...
J'ai essaye avec FormulaArray, FormulaR1C1, j'ai meme tente un FormulaHidden. mais rien j'ai toujours la meme erreur.
Ou est ce que le truc plante???? est ce que quelqu'un pourrait me donner la voix a suivre.
je suis sur excel 2007 (en version jap mais c pas bien grave)
Et j'ai un Module Sample_XlsDwl et un Sub dans une Feuille nommee "SHEET1".
une petite idee du probleme?
je vous remercie d'avance
E_G_X