Bonjour à tous
J'ai vu que des discussions avaient déjà été ouvertes sur des sujets similaires, mais après quelques heures à essayer de m'en sortir seul, j'abdique et je tente la demande d'entre-aide.
J'ai un dossier contenant des fichiers Excel qui sont remplis par des individus (réponses à des questionnaires) que je cherche à regrouper en un seul fichier type BDD (les questionnaires sont sur plusieurs feuilles, mais tous les fichiers sont identiques dans leur structure par contre, et même dossier).
J'ai besoin que dans la première colonne de mon fichier BDD apparaisse le nom du fichier. J'ai tenté de le faire dans la macro suivante, mais ça ne marche pas. Je n’ai pas de l’utiliser la bonne formule.
J'aimerais aussi pouvoir copier / coller-transposer (uniquement les valeurs) à la suite du premier coller les résultats des feuilles suivantes, mais là aussi je n'arrive pas à coder correctement.
Je vous mets l'exemple de mon fichier source et de mon fichier base de données et le code que j'ai tenté d'écrire.
Merci énormément pour votre aide et vos conseils.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 Sub Extraire() Application.ScreenUpdating = False Dim Fichier As String Dim Chemin As String Dim ClasseurSource As Workbook Dim valeur1 As String valeur1 = ThisWorkbook.Worksheets("Synth").Range("A1").Value Chemin = "C:\Users\...\questionnaire adulte complémentaire\" & valeur1 & "\" 'Chemin du répertoire contenant les fichiers Fichier = Dir(Chemin & "Cotation autoquestionnaire complementaire*.xlsx") Do While Fichier <> "" Set ClasseurSource = Workbooks.Open(Chemin & Fichier) [ATTACH]418477[/ATTACH][ATTACH]418478[/ATTACH] ClasseurSource.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Insert = "nom de fichier" ClasseurSource.Worksheets("YFAS 2").Range("D2:D89").Copy ThisWorkbook.Worksheets("Synth").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=True ClasseurSource.Close Fichier = Dir Loop End Sub
Merci de votre aide
NB : j'ai aussi un petit souci sous Mac, il ne trouve pas le lien vers mon dossier, y'a une subtilité que je n'ai pas du saisir
Partager