C@thy
XLDnaute Barbatruc
Bonjour le forum.
Y'avait longtemps... que je ne vous avais pas embêté... eh bien me revoilà!
J'explique ma problématique. Pour l'instant je ne peux pas joindre de fichier je n'ai pas XL sur ma tablette :-( et pas de réseau sur mon PC :-(((
Chaque mois je reçois 2 fichiers un fichier O et un fichier L.
L'identifiant commun se trouve en colonne A du fichier O et en colonne F du fichier L.
Je dois créer un 3ème fichier avec les informations suivantes :
Col A identifiant col B Nom (pris en col L du fichier L) col C prénom (pris en col M du fichier L)
Col D tél (pris en col Y du fichier L) col E Section (pris en col N du fichier L) col F description (pris en col O du fichier O) et col G montant (pris en colonne S du fichier O).
Édit : erreurrrrr. .. la description se trouve en col B du fichier O et non col O
Là où ça se corse c'est que dans le fichier O l'identifiant peut apparaître 2 fois mais pas à la suite. Une fois dans la col. description, il y a téléphone et si il y a une 2ème occurrence dans la col. description il y a accessoire. Je dois recopier les informations des 2 lignes l'une à la suite de l'autre.
Pour l'instant voici mon code : (recopié à la mano)
Option explicit
Sub MaMacro
Dim chemin as string, fichierO as string, FichierL as string, R as string
Dim cel as range
Chemin = "C:\toto"
Chdir chemin
fichier = Dir ("*.xls*")
While fichier <> "" and fichier <> thisworkbook.name
Workbooks.open (chemin & fichier)
Wend
Workbooks.add
Active Workbooks.open. sa vers Filename := chemin & "compta"
Range ("A1"). FormulaR1C1 = "Liasse"
Range ("B1"). FormulaR1C1 = "Nom"
Range ("C1"). FormulaR1C1 = "Prenom"
Range ("D1"). FormulaR1C1 = "tel"
Range ("E1"). FormulaR1C1 = "Description"
Range ("F1"). FormulaR1C1 = "montant"
Range ("G1"). FormulaR1C1 = "Num facture"
With Workbook ("fichier O. xlsx")
for each cel in range ("A2:A" & rows. Count).end (xlup).row
set R = sheets("Feuil1").find (what:=cel.Value)
If not cel is nothing then
........
........
'recherche si suivant même identifiant
Sélection. Find (After:=ActiveCell).activate
End if
Next cel
End sub
Un très très grand Merci pour votre aide.
P.S Ne pas joindre de fichier je ne pourrais pas lire le code...
Au plaisir de vous lire et salutations à toutes celles et ceux que je connais.
C@thy
Y'avait longtemps... que je ne vous avais pas embêté... eh bien me revoilà!
J'explique ma problématique. Pour l'instant je ne peux pas joindre de fichier je n'ai pas XL sur ma tablette :-( et pas de réseau sur mon PC :-(((
Chaque mois je reçois 2 fichiers un fichier O et un fichier L.
L'identifiant commun se trouve en colonne A du fichier O et en colonne F du fichier L.
Je dois créer un 3ème fichier avec les informations suivantes :
Col A identifiant col B Nom (pris en col L du fichier L) col C prénom (pris en col M du fichier L)
Col D tél (pris en col Y du fichier L) col E Section (pris en col N du fichier L) col F description (pris en col O du fichier O) et col G montant (pris en colonne S du fichier O).
Édit : erreurrrrr. .. la description se trouve en col B du fichier O et non col O
Là où ça se corse c'est que dans le fichier O l'identifiant peut apparaître 2 fois mais pas à la suite. Une fois dans la col. description, il y a téléphone et si il y a une 2ème occurrence dans la col. description il y a accessoire. Je dois recopier les informations des 2 lignes l'une à la suite de l'autre.
Pour l'instant voici mon code : (recopié à la mano)
Option explicit
Sub MaMacro
Dim chemin as string, fichierO as string, FichierL as string, R as string
Dim cel as range
Chemin = "C:\toto"
Chdir chemin
fichier = Dir ("*.xls*")
While fichier <> "" and fichier <> thisworkbook.name
Workbooks.open (chemin & fichier)
Wend
Workbooks.add
Active Workbooks.open. sa vers Filename := chemin & "compta"
Range ("A1"). FormulaR1C1 = "Liasse"
Range ("B1"). FormulaR1C1 = "Nom"
Range ("C1"). FormulaR1C1 = "Prenom"
Range ("D1"). FormulaR1C1 = "tel"
Range ("E1"). FormulaR1C1 = "Description"
Range ("F1"). FormulaR1C1 = "montant"
Range ("G1"). FormulaR1C1 = "Num facture"
With Workbook ("fichier O. xlsx")
for each cel in range ("A2:A" & rows. Count).end (xlup).row
set R = sheets("Feuil1").find (what:=cel.Value)
If not cel is nothing then
........
........
'recherche si suivant même identifiant
Sélection. Find (After:=ActiveCell).activate
End if
Next cel
End sub
Un très très grand Merci pour votre aide.
P.S Ne pas joindre de fichier je ne pourrais pas lire le code...
Au plaisir de vous lire et salutations à toutes celles et ceux que je connais.
C@thy
Dernière édition: