Bonjour @ tous,
suite aux conseils de MJ13, suite à un probleme de procédure trop longue, en effet à partir d'une base de données j'extrait les informations pour créer une fiche personnelle.
cependant ayant presque 400 critères et utilisant une succession de copy:
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 6).Copy
ActiveWorkbook.ActiveSheet.Range("e5").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 7).Copy
ActiveWorkbook.ActiveSheet.Range("e6").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 8).Copy
ActiveWorkbook.ActiveSheet.Range("c7").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 9).Copy
ActiveWorkbook.ActiveSheet.Range("f7").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 10).Copy
ActiveWorkbook.ActiveSheet.Range("c8").PasteSpecia l Paste:=xlPasteValues
la procedure devient trop longue.
Ainsi MJ13 m'a proposer de créer un tableau de concordance et de boucler dessus.
J'ai donc créer le tableau que je vous mets en pièce jointe avec 1 colonne concernant le décalage cells(n,x), le n étant déja défini auparavant dans le reste de la procédure; 1 colonne avec la feuille d'origine, 1 autre avec la feuille de destination et enfin le range de destination.
Mon probleme est de créer une boucle reprenant cela:
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 10).Copy
ActiveWorkbook.ActiveSheet.Range("c8").PasteSpecia l Paste:=xlPasteValues
en remplaçant les éléments en rouge par ceux des colonnes du tableau en variable et brossant tout le tableau
en espérant avoir été suffisament clair.
Pour l'exemple j'ai regroupé l'ensemble sur un meme classeur, dans l'application le classeur base de données et fiche individuelle sont séparés.
Merci d'avance
@+
suite aux conseils de MJ13, suite à un probleme de procédure trop longue, en effet à partir d'une base de données j'extrait les informations pour créer une fiche personnelle.
cependant ayant presque 400 critères et utilisant une succession de copy:
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 6).Copy
ActiveWorkbook.ActiveSheet.Range("e5").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 7).Copy
ActiveWorkbook.ActiveSheet.Range("e6").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 8).Copy
ActiveWorkbook.ActiveSheet.Range("c7").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 9).Copy
ActiveWorkbook.ActiveSheet.Range("f7").PasteSpecia l Paste:=xlPasteValues
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 10).Copy
ActiveWorkbook.ActiveSheet.Range("c8").PasteSpecia l Paste:=xlPasteValues
la procedure devient trop longue.
Ainsi MJ13 m'a proposer de créer un tableau de concordance et de boucler dessus.
J'ai donc créer le tableau que je vous mets en pièce jointe avec 1 colonne concernant le décalage cells(n,x), le n étant déja défini auparavant dans le reste de la procédure; 1 colonne avec la feuille d'origine, 1 autre avec la feuille de destination et enfin le range de destination.
Mon probleme est de créer une boucle reprenant cela:
Workbooks("suivi RH compagnie.xls").Sheets("rensprivés").Cells(n, 10).Copy
ActiveWorkbook.ActiveSheet.Range("c8").PasteSpecia l Paste:=xlPasteValues
en remplaçant les éléments en rouge par ceux des colonnes du tableau en variable et brossant tout le tableau
en espérant avoir été suffisament clair.
Pour l'exemple j'ai regroupé l'ensemble sur un meme classeur, dans l'application le classeur base de données et fiche individuelle sont séparés.
Merci d'avance
@+