Bonjour,

J'ai essayé de créer le programme que je vais vous montrer après. Celui-ci à une partie qui crash.

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
Sub RecupérationDesDonnées()
 
'Déclaration de variables
    Dim Fichier As String
    Dim Chemin As String
    Dim Nom_classeur As String
    Dim Repertoire As FileDialog
    Dim Wb As Workbook
    i = 0
    e = 0
 
' Choix du chemin
    Set Repertoire = Application.FileDialog(msoFileDialogFolderPicker)
    Repertoire.Show
    Chemin = Repertoire.SelectedItems(1)
 
'Choix du fichier
    Fichier = Dir(Chemin & "\" & "*.xls")
 
 
'Boucle d'actions
    Do While Fichier <> ""
        'Ouverture du fichier source et activation de la page
            Set Wb = Workbooks.Open(Chemin & "\" & Fichier)
            Worksheets(1).Activate
            Nom_classeur = ActiveWorkbook.Name
 
        ' Sélection et copie des valeurs souhaitées
            Range("A1:G1").Select
            Range(Selection, Selection.End(xlDown)).Select
            Selection.Copy
 
        'Choix du document de synthèse
            Workbooks("Recup.xlsm").Activate
 
        'Copie des valeurs
            Sheets("Feuil1").Activate 'sélectionne la feuille du transfert
            Range("D65000").End(xlUp).Offset(1).Select 'recherche la première cellule vide
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
 
        'Report du nom du rapport (du fichier)
            ' Selectionne la première cellule du tableau de la feuille1
                Sheets("Feuil1").Activate 'sélectionne la feuille1 du transfert
 
            ' Boucle tant que pas vide
            Do While Not (IsEmpty(Range("D2")))
 
 
                Cells(1 + e, 1).Value = Left(Nom_classeur, InStr(Nom_classeur, ".xls") - 1)
                e = e + 1
 
            Loop
 
        ' Fermeture du fichier source
            Wb.Close True
 
        ' Réinitialisation des indicateurs
            Set Wb = Nothing
            i = i + 1
            Fichier = Dir
 
 
    Loop
 
 
 
 
End Sub
J'espère que vous trouverez l'erreur à l'intérieur, je ne comprends toujours pas pourquoi il crash.
Sachant que je vois le fonctionner puis après ne rien faire.

Merci d'avance à ce qui prendrons le temps de m'aider!

Lyndils.