Bonjour,
Je poste pour la première fois ici, j'ai tenté de trouver des solutions à mon problème mais impossible de trouver un topic correspondant à ma situation. Je vais essayer d'être le plus clair possible :
Situation initiale : J'ai actuellement 300 fichiers excel en format xlx dans un dossier sur mon bureau, ils ont tous la même trame. Le nom des fichiers sont fluctuants (pas forcement de logique).
Mon but : Compiler dans un fichier excel de synthèse CERTAINES cellules de chacun des fichiers. Le but étant de le mettre sous format d'un tableau. 1 ligne = 1 fichier. Cette ligne comportera : 19 colonnes correspondant aux 19 cellules que je dois récupérer dans les fichiers.
A la fin je dois avoir : 300 lignes de 19 colonnes remplies.
Dans ma tête j'ai une solution sous la main : l'utilisation de VBA. Je suis loin d'être expert en la matière. Cependant voici ce que j'ai en tête :
La macro doit comporter :
1) Démarrer du fichier de synthèse pour aller ouvrir dans le fichier répertoire le 1er fichier a extraire.
2) Lui ordonner de faire un premier copier coller de la première cellule pour la coller dans la synthèse
3) répartition de l'action pour chacune des cellules à C/C
4) Fermer le fichier et recommande sur l'ensemble des fichiers xlsx
Techniquement parlant : le fichier de synthèse se prénomme : "TrameEntretienPro" et le dossier dans lequel se trouve les fichiers à compiler : "Repertoire test" (sur mon bureau).
La première ligne à remplir commence : B4 et termine en T4
Les cellules à copier : F7 / F8 / F11 / B21 / B22 etc. (au total 19 cellules)
Pour le code du chemin :
Sub recup()
Range("A4").Select
Chemin = "C:\Users\XXXXXXX\Desktop\Repertoire test\"
Fichier = Dir(Chemin & "*.xls")
Do While Fichier <> ""
Workbooks.Open Filename:=Chemin & Fichier
Sheets("Sheet1").Select
Range("F7").Select
Application.CutCopyMode = False
Selection.Copy
Windows("TrameEntretienPro.xlsx").Activate
Range("B4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
....
Après je dois avouer que je cale un peu...
Si vous avez des idées, de l'aide à m'apporter je suis preneur...
Merci beaucoup à tous
Je poste pour la première fois ici, j'ai tenté de trouver des solutions à mon problème mais impossible de trouver un topic correspondant à ma situation. Je vais essayer d'être le plus clair possible :
Situation initiale : J'ai actuellement 300 fichiers excel en format xlx dans un dossier sur mon bureau, ils ont tous la même trame. Le nom des fichiers sont fluctuants (pas forcement de logique).
Mon but : Compiler dans un fichier excel de synthèse CERTAINES cellules de chacun des fichiers. Le but étant de le mettre sous format d'un tableau. 1 ligne = 1 fichier. Cette ligne comportera : 19 colonnes correspondant aux 19 cellules que je dois récupérer dans les fichiers.
A la fin je dois avoir : 300 lignes de 19 colonnes remplies.
Dans ma tête j'ai une solution sous la main : l'utilisation de VBA. Je suis loin d'être expert en la matière. Cependant voici ce que j'ai en tête :
La macro doit comporter :
1) Démarrer du fichier de synthèse pour aller ouvrir dans le fichier répertoire le 1er fichier a extraire.
2) Lui ordonner de faire un premier copier coller de la première cellule pour la coller dans la synthèse
3) répartition de l'action pour chacune des cellules à C/C
4) Fermer le fichier et recommande sur l'ensemble des fichiers xlsx
Techniquement parlant : le fichier de synthèse se prénomme : "TrameEntretienPro" et le dossier dans lequel se trouve les fichiers à compiler : "Repertoire test" (sur mon bureau).
La première ligne à remplir commence : B4 et termine en T4
Les cellules à copier : F7 / F8 / F11 / B21 / B22 etc. (au total 19 cellules)
Pour le code du chemin :
Sub recup()
Range("A4").Select
Chemin = "C:\Users\XXXXXXX\Desktop\Repertoire test\"
Fichier = Dir(Chemin & "*.xls")
Do While Fichier <> ""
Workbooks.Open Filename:=Chemin & Fichier
Sheets("Sheet1").Select
Range("F7").Select
Application.CutCopyMode = False
Selection.Copy
Windows("TrameEntretienPro.xlsx").Activate
Range("B4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
....
Après je dois avouer que je cale un peu...
Si vous avez des idées, de l'aide à m'apporter je suis preneur...
Merci beaucoup à tous