Sub Macro1()
Dim WbSource As Workbook
Dim WbDest As Workbook
Dim TabSource() As Variant
Dim TabDest() As Variant
Set WbDest = ActiveWorkbook
Nomfichier = Application.GetOpenFilename(, , "Fichier Source") 'demande le fichier source qui contient les infos à importer
If Nomfichier <> "" Then
Workbooks.Open (Nomfichier) 'ouvre le fichier
Set WbSource = ActiveWorkbook
End If
'
With WbSource.Sheets("Feuil1")
TabSource = .UsedRange.Value 'récupère toutes les infos dans un tablo vba
End With
With WbDest 'on repasse sur le fichier de traitement
.Activate
With .Sheets("Feuil1")
.Range("M1").Value = "Taux Tese" 'on ajoute l'intitulé de colonne
TabDest = .UsedRange.Value 'on met toute la feuille dans un tablo vba
For i = LBound(TabDest, 1) To UBound(TabDest, 1) 'pour chaque ligne
For j = LBound(TabSource, 1) To UBound(TabSource, 1) 'on cherche le numéro de contrat dans le tablo source
If TabDest(i, 6) = TabSource(j, 4) Then
TabDest(i, 13) = TabSource(j, 25) 'on copie le taux (colonne Y ==>colonne M)
Exit For
End If
Next j
Next i
.Range("A1").Resize(UBound(TabDest, 1), UBound(TabDest, 2)) = TabDest 'on colle le résultat dans la feuille
End With
End With
WbSource.Close False 'on ferme le fichier source sans modif
End Sub