Comparer deux colonnes et copier la valeur a coté
josejuan87
Messages postés
1
Statut
Membre
-
ThauTheme Messages postés 1564 Statut Membre -
ThauTheme Messages postés 1564 Statut Membre -
Bonjour les amis,
J'aurais besoin d'un programme que suite a une colonne dans un excel avec des numeros (ex 123456789) vient chercher les memes numeros dans une autre colonne placé dans un autre fichier excel mais qui n'a pas les 9 numeros (c'est à dire, ca s'arrete a 6 donc 123456) et puis que ca copie a coté de ce numero la colonne qu'il a juste a coté.
Merci d'avance et désolé si je me suis pas super bien exprimé ^^
José
J'aurais besoin d'un programme que suite a une colonne dans un excel avec des numeros (ex 123456789) vient chercher les memes numeros dans une autre colonne placé dans un autre fichier excel mais qui n'a pas les 9 numeros (c'est à dire, ca s'arrete a 6 donc 123456) et puis que ca copie a coté de ce numero la colonne qu'il a juste a coté.
Merci d'avance et désolé si je me suis pas super bien exprimé ^^
José
A voir également:
- Comparer deux colonnes et copier la valeur a coté
- Comment faire deux colonnes sur word - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Inverser deux colonnes excel - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Comment copier une vidéo youtube - Guide
1 réponse
Bonjour José, bonjour le forum,
D'habitude je propose des codes "full comment" mais comme tu n'as même pas daigné fournir des explications précises, je te propose le code ci-dessous à adapter à ton cas :
Les deux classeurs doivent être ouverts et le code est à placer dans le classeur qui contient 9 chiffres...
D'habitude je propose des codes "full comment" mais comme tu n'as même pas daigné fournir des explications précises, je te propose le code ci-dessous à adapter à ton cas :
Sub Macro1()
Dim CD As Workbook
Dim OD As Worksheet
Dim CS As Workbook
Dim OS As Worksheet
Dim CLS As Integer
Dim CLD As Integer
Dim DLS As Integer
Dim DLD As Integer
Dim TVD As Variant
Dim TVS As Variant
Dim I As Integer
Dim J As Integer
Set CD = ThisWorkbook
Set OD = CD.Worksheets("Feuil1") 'à adapter à ton cas
Set CS = wokbooks("ICI_le Nom_du_Classeur_Source.xlsx") 'à adapter à ton cas
Set OS = CS.Worksheets("Feuil1") 'à adapter à ton cas
CLD = 1 'à adapter à ton cas (Colonne des données à 9 chiffres)
CLS = 1 'à adapter à ton cas (Colonne des données à 6 chiffres)
DLD = OD.Cells(Application.Rows.Count, CLD).End(xlUp).Row
DLS = OS.Cells(Application.Rows.Count, CLS).End(xlUp).Row
TVD = OD.Range(OD.Cells(1, CLD), OS.Cells(DLD, CLD))
TVS = OS.Range(OS.Cells(1, CLS), OS.Cells(DLS, CLS + 1))
For I = 1 To UBound(TVD, 1)
For J = 1 To UBound(TVS, 1)
If CStr(Left(TVD(I, 1), 6)) = CStr(TVS(J, 1)) Then
OD.Cells(I, CD + 1).Value = TVS(J, 2)
Exit For
End If
Next J
Next I
End Sub
Les deux classeurs doivent être ouverts et le code est à placer dans le classeur qui contient 9 chiffres...