yakutake83
XLDnaute Occasionnel
Bonjour le forum.
Voilà, je cherche à faire des index + equiv, mais sous VBA!
Plus précisément:
j'ai un fichier A dans lequel j'ai beaucoup d'infos, dont une info importante dans la colonne C. Je dois aller chercher, dans un fichier B, des infos associées à la données de la colonne C du fichier A.
Je vous donne le code que j'ai réalisé, et qui bugue (en rouge, la partie qui bugue)!
Adresse est le nom du fichier B, qui est ouvert avant l'exécution.
Merci d'avance à tous!
Sub copie()
Dim PlageRecherche As Range
Dim PlageEtude As Range
Derligne = Range("A" & Application.Rows.Count).End(xlUp).Row
Worksheets("Dates").Select
Adresse = Cells(1, 1).Value
Derligne2 = Workbooks(Adresse).Worksheets("RCE").Range("A" & Application.Rows.Count).End(xlUp).Row
PlageEtude = Range(Workbooks(Adresse).Worksheets("RCE").Cells(3, 2), Workbooks(Adresse).Worksheets("RCE").Cells(Derligne2, 2))
PlageRecherche = Range(Workbooks(Adresse).Worksheets("RCE").Cells(3, 9), Workbooks(Adresse).Worksheets("RCE").Cells(Derligne2, 9))
For x = 3 To Derligne
Cells(x, 2).Value = Application.Worksheetsfunction.Index(PlageEtude, Application.Worksheetsfunction.Match(PlageRecherche, Cells(x, 3)))
Next x
End Sub
note : je n'ai pas mis la suite en rouge, puisque je n'arrive pas à aller plus loin!
note2 : il y a des espaces en trop, c'est dû uniquement au forum!
Voilà, je cherche à faire des index + equiv, mais sous VBA!
Plus précisément:
j'ai un fichier A dans lequel j'ai beaucoup d'infos, dont une info importante dans la colonne C. Je dois aller chercher, dans un fichier B, des infos associées à la données de la colonne C du fichier A.
Je vous donne le code que j'ai réalisé, et qui bugue (en rouge, la partie qui bugue)!
Adresse est le nom du fichier B, qui est ouvert avant l'exécution.
Merci d'avance à tous!
Sub copie()
Dim PlageRecherche As Range
Dim PlageEtude As Range
Derligne = Range("A" & Application.Rows.Count).End(xlUp).Row
Worksheets("Dates").Select
Adresse = Cells(1, 1).Value
Derligne2 = Workbooks(Adresse).Worksheets("RCE").Range("A" & Application.Rows.Count).End(xlUp).Row
PlageEtude = Range(Workbooks(Adresse).Worksheets("RCE").Cells(3, 2), Workbooks(Adresse).Worksheets("RCE").Cells(Derligne2, 2))
PlageRecherche = Range(Workbooks(Adresse).Worksheets("RCE").Cells(3, 9), Workbooks(Adresse).Worksheets("RCE").Cells(Derligne2, 9))
For x = 3 To Derligne
Cells(x, 2).Value = Application.Worksheetsfunction.Index(PlageEtude, Application.Worksheetsfunction.Match(PlageRecherche, Cells(x, 3)))
Next x
End Sub
note : je n'ai pas mis la suite en rouge, puisque je n'arrive pas à aller plus loin!
note2 : il y a des espaces en trop, c'est dû uniquement au forum!