Bonjour,
J'ai essayé de créer le programme que je vais vous montrer après. Celui-ci à une partie qui crash.
J'espère que vous trouverez l'erreur à l'intérieur, je ne comprends toujours pas pourquoi il 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
Sachant que je vois le fonctionner puis après ne rien faire.
Merci d'avance à ce qui prendrons le temps de m'aider!
Lyndils.
Partager