Bonjour (ou rebonjour)
J'essaie de remplir un classeur à l'aide d'un Index-Equiv : en effet, je dois trouver la valeur commune entre un identifiant et un nom de colonne.
J'ai trouvé ce code sur internet (que j'ai adapté), qui me semble fonctionnel, mais j'ai l'erreur #N/A qui apparaît lorsque je souhaite boucler le remplissage.
L'onglet "SOURCE" correspond à la source de mes données
La plage "A1:A8" correspond à ma colonne d'identifiant
La plage "A1:C1" correspond à ma ligne de champs
Mes noms de champs sont rigoureusement identiques d'un onglet à l'autre. De même, les identifiants dans l'onglet de résultats sont tous présents dans l'onglet source.Code:
1
2
3
4
5
6
7
8
9 Sub test_rempli() For J = 5 To 6 'Pour les colonnes de 5 à 6 For I = 2 To 8 'Pour les lignes de 2 à 8 a = Application.Match(I, Sheets("SOURCE").Range("A1:A8"), 0) b = Application.Match(J, Sheets("SOURCE").Range("A1:C1"), 0) Cells(I, J) = Application.Index(Sheets("SOURCE").Range("A2:C8"), a, b) Next Next End Sub
En essayant de remplir le classeur sans boucle, j'y arrive parfaitement :
Code:
1
2
3
4
5 Sub test_rempli() a = Application.Match(Range("A2"), Worksheets("SOURCE").Range("A1:A8"), 0) b = Application.Match(Range("E1"), Worksheets("SOURCE").Range("A1:C1"), 0) Range("E2") = Application.Index(Worksheets("SOURCE").Range("A2:C8"), a, b) End Sub
EDIT : Ah bah non c'est bon j'ai trouvé toute seule d'où venait le soucis (j'oubliais le "cells" après le application.Match...) Désolée ! :P
Je sais que la politique du forum est d'éviter au maximum l'envoi de pièces jointes. Si malgré tout, vous en avez besoin, n'hésitez pas à me la demander.
Merci et bonne soirée !