Comment utiliser la fonction INDEX en language VBA ? [RESOLU]
[RESOLU]
Bonsoir à tous,
J'arrive sans problème à utiliser INDEX directement dans les cellules excel.
En revanche, je n'y arrive pas en VBA... 🙁
J'ai utiliser l'enregistreur de macro pour voir ce que ça me donnait, et voilà le code obtenu :
("Fantôme" et "1. Importation" sont les noms de mes feuilles)
Sheets("Fantôme").Select
Range("K3").Select
ActiveCell.FormulaR1C1 = _
"=INDEX('1. Importation'!R[1]C[-5]:R[66]C[-5], Fantôme!R[-2]C)"
Ce code fonctionne sans problème.
Mais je ne veux pas du 66 entre crochet derrière le R.
A la place, je voudrais une variable Integer qui s'appelle DrnLigne.
Mais quand je remplace R[66] par R[DrnLigne], le code plante en disant :
"erreur d'execution 1004 : erreur définie par l'application ou par l'objet."
Merci d'avance. 🙂
PS : Si vous avez 5 minutes, pourriez-vous m'expliquer comment fonctionne INDEX en VBA ?
Je ne comprend rien à ces R[1]C[-5 ], FormulaR1C1, ...
[RESOLU]
Bonsoir à tous,
J'arrive sans problème à utiliser INDEX directement dans les cellules excel.
En revanche, je n'y arrive pas en VBA... 🙁
J'ai utiliser l'enregistreur de macro pour voir ce que ça me donnait, et voilà le code obtenu :
("Fantôme" et "1. Importation" sont les noms de mes feuilles)
Sheets("Fantôme").Select
Range("K3").Select
ActiveCell.FormulaR1C1 = _
"=INDEX('1. Importation'!R[1]C[-5]:R[66]C[-5], Fantôme!R[-2]C)"
Ce code fonctionne sans problème.
Mais je ne veux pas du 66 entre crochet derrière le R.
A la place, je voudrais une variable Integer qui s'appelle DrnLigne.
Mais quand je remplace R[66] par R[DrnLigne], le code plante en disant :
"erreur d'execution 1004 : erreur définie par l'application ou par l'objet."
Merci d'avance. 🙂
PS : Si vous avez 5 minutes, pourriez-vous m'expliquer comment fonctionne INDEX en VBA ?
Je ne comprend rien à ces R[1]C[-5 ], FormulaR1C1, ...
Dernière édition: