Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

récupération de données dans plusieurs fichiers

2 réponses
Avatar
vincent
Bonjour,


Je cherche à récupérer, sur la feuille d'un classeur vierge, dans environ
quelques 3000 classeurs xls situés dans le même répertoire les valeurs
contenues dans les cellules B4, C4 et M4 de chaque classeur.
En sachant que chaque classeur ne contient qu'une feuille nommée Feuil1.

De plus, pour corser le tout, je dois également récupérer les valeurs
contenues dans les cellules n+1 de cellules remplies avec le texte: "total
mp" et "total valeur ajouté"... sachant que ces cellules ne sont jamais au
même endroit....

merci d'essayer de m'aiguiller...

2 réponses

Avatar
Daniel
Bonjour.
Essaie le code suivant les résultats ont été collés dans les colonnes B, C
et M. Les valeurs correspondant aux totaux ont été mis dans les colonnes D
et E.
J'ai supposé que les totaux se trouvaient à côté des libellés (s'ils sont
dessous, il faut modifier le code). Le répertoire est évidemment à modifier.

Sub test()
Dim Fich As String, Ligne As Long, Chemin As String
'Modifier le chemin selon les besoins
Chemin = "e:donneesdaniel"
Ligne = 1
Fich = Dir(Chemin & "*.xls")
Do While Fich <> ""
Workbooks.Open Chemin & Fich
Var1 = Range("B4").Value
Var2 = Range("C4").Value
Var3 = Range("M4").Value
Set c = ActiveSheet.UsedRange.Find("total mp")
Var4 = c.Offset(0, 1).Value
Set c = ActiveSheet.UsedRange.Find("total valeur ajouté")
Var5 = c.Offset(0, 1).Value
ActiveWorkbook.Close SaveChanges:úlse
Range("B" & Ligne).Value = Var1
Range("C" & Ligne).Value = Var2
Range("M" & Ligne).Value = Var3
Range("D" & Ligne).Value = Var4
Range("E" & Ligne).Value = Var5
Ligne = Ligne + 1
Fich = Dir
Loop
End Sub

"vincent" a écrit dans le message
de news:
Bonjour,


Je cherche à récupérer, sur la feuille d'un classeur vierge, dans environ
quelques 3000 classeurs xls situés dans le même répertoire les valeurs
contenues dans les cellules B4, C4 et M4 de chaque classeur.
En sachant que chaque classeur ne contient qu'une feuille nommée Feuil1.

De plus, pour corser le tout, je dois également récupérer les valeurs
contenues dans les cellules n+1 de cellules remplies avec le texte: "total
mp" et "total valeur ajouté"... sachant que ces cellules ne sont jamais
au
même endroit....

merci d'essayer de m'aiguiller...








Avatar
vincent
merci daniel... avec quelques petites adaptations, j'ai trouvé mon
bonheur... ;)




"Daniel" a écrit dans le message de
news:
Bonjour.
Essaie le code suivant les résultats ont été collés dans les colonnes B, C
et M. Les valeurs correspondant aux totaux ont été mis dans les colonnes D
et E.
J'ai supposé que les totaux se trouvaient à côté des libellés (s'ils sont
dessous, il faut modifier le code). Le répertoire est évidemment à
modifier.


Sub test()
Dim Fich As String, Ligne As Long, Chemin As String
'Modifier le chemin selon les besoins
Chemin = "e:donneesdaniel"
Ligne = 1
Fich = Dir(Chemin & "*.xls")
Do While Fich <> ""
Workbooks.Open Chemin & Fich
Var1 = Range("B4").Value
Var2 = Range("C4").Value
Var3 = Range("M4").Value
Set c = ActiveSheet.UsedRange.Find("total mp")
Var4 = c.Offset(0, 1).Value
Set c = ActiveSheet.UsedRange.Find("total valeur ajouté")
Var5 = c.Offset(0, 1).Value
ActiveWorkbook.Close SaveChanges:úlse
Range("B" & Ligne).Value = Var1
Range("C" & Ligne).Value = Var2
Range("M" & Ligne).Value = Var3
Range("D" & Ligne).Value = Var4
Range("E" & Ligne).Value = Var5
Ligne = Ligne + 1
Fich = Dir
Loop
End Sub

"vincent" a écrit dans le
message

de news:
Bonjour,


Je cherche à récupérer, sur la feuille d'un classeur vierge, dans
environ


quelques 3000 classeurs xls situés dans le même répertoire les valeurs
contenues dans les cellules B4, C4 et M4 de chaque classeur.
En sachant que chaque classeur ne contient qu'une feuille nommée Feuil1.

De plus, pour corser le tout, je dois également récupérer les valeurs
contenues dans les cellules n+1 de cellules remplies avec le texte:
"total


mp" et "total valeur ajouté"... sachant que ces cellules ne sont jamais
au
même endroit....

merci d'essayer de m'aiguiller...