Bonjour,
Je suis en train d'écrire un programme qui a pour objectif d'aller chercher des informations (toujours au même endroit) dans les fichiers Excel d'un répertoire pour les réunir dans un autre fichier excel qui fait office de tableau de bord. Je souhaite que les fichiers restent fermés pendant l'exécution. Voici mon programme :
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 Sub importdonees() Dim principal As ThisWorkbook Dim repertoire As String Dim fichier As String Dim i As Integer repertoire = "P:\Valentine\Système alerte qualité\Alertes qualités\*.xlsm" fichier = Dir("P:\Valentine\Système alerte qualité\Alertes qualités\*.xlsm") i = 2 While Len(fichier) > 0 MsgBox fichier i = i + 1 Range("B" & i).Select ActiveCell.FormulaR1C1 = _ "='P:\Valentine\Système alerte qualité\Alertes qualités\[AlerteQF_20_08_19.xlsm]Alerte_qualité_fournisseur'!R4C3" Range("C" & i).Select ActiveCell.FormulaR1C1 = _ "='[AlerteQF_20_08_19.xlsm]Alerte_qualité_fournisseur'!R4C5" Range("D" & i).Select ActiveCell.FormulaR1C1 = _ "='[AlerteQF_20_08_19.xlsm]Alerte_qualité_fournisseur'!R6C3" Range("E" & i).Select ActiveCell.FormulaR1C1 = _ "='[AlerteQF_20_08_19.xlsm]Alerte_qualité_fournisseur'!R3C13" Range("F" & i).Select ActiveCell.FormulaR1C1 = _ "='[AlerteQF_20_08_19.xlsm]Alerte_qualité_fournisseur'!R9C10" fichier = Dir Wend End Sub
Pour l'instant je n'ai que 4 fichiers dans mon répertoire mais à l'avenir il pourrait y en avoir des centaines, d'où la nécessité de faire une boucle.J'ai testé, la boucle marche. Néanmoins, pour l'instant mon programme ne transfère que les valeurs d'un même fichier "AlerteQF_20_08_19.xlsm" puisque je ne l'ai pas changé.
Je cherche donc un moyen de mettre une variable dans mon chemin d'accès, comme la variable "fichier" dans mon cas qui serait parfaite pour remplacer [AlerteQF_20_08_19.xlsm]. Est-ce que cela est possible?
Merci d'avance
Partager