Récupérer des données ds une feuille excel
Résolu
shishumi
-
eddy_bzh Messages postés 1 Statut Membre -
eddy_bzh Messages postés 1 Statut Membre -
Bonjour,
voila g récupérer un code pour pouvoir ouvrir des fichiers excel.
mais maintenant je dois pouvoir récupérer des données qui sont sur ces même classeurs (les données se situe au même endroit pour chaque classeur) sachant que ces données sont sur les cellules C10,C9,C8,C5 et C6.
Puis pour finir je doit prendre ces données et les placer dans un autre classeur sur une ligne pour chaque classeur.
Je c que je ne suis pas trés claire mais si vous avez besoin de plus d'info n'hésité pas.
voici le code pour ouvrir mes classeurs :
mes données à récupérer doivent être ici
Merci pour votre aide.
voila g récupérer un code pour pouvoir ouvrir des fichiers excel.
mais maintenant je dois pouvoir récupérer des données qui sont sur ces même classeurs (les données se situe au même endroit pour chaque classeur) sachant que ces données sont sur les cellules C10,C9,C8,C5 et C6.
Puis pour finir je doit prendre ces données et les placer dans un autre classeur sur une ligne pour chaque classeur.
Je c que je ne suis pas trés claire mais si vous avez besoin de plus d'info n'hésité pas.
voici le code pour ouvrir mes classeurs :
Option Explicit
' option à activer dans VBA menu Outils | Références : Cocher Microsoft Scripting Runtime
Const DossierFichiers As String = "C:\Documents and Settings\martint\Bureau\abaques\hertziennes"
Sub Ouvrir_fichier()
ListeFichiersDans DossierFichiers
End Sub
Private Sub ListeFichiersDans(ByVal NomDossier As String)
Dim FSO As Scripting.FileSystemObject
Dim DossierSource As Scripting.Folder
Dim Fichier As Scripting.File
Dim x As Long
Set FSO = New Scripting.FileSystemObject
Set DossierSource = FSO.GetFolder(NomDossier)
x = 0
For Each Fichier In DossierSource.Files
x = x + 1
Workbooks.Open Filename:=Fichier
Sheets("Paramètres").Select
mes données à récupérer doivent être ici
ActiveWorkbook.Close False
Next Fichier
MsgBox "Nb Fichiers : " & x
Set Fichier = Nothing
Set DossierSource = Nothing
Set FSO = Nothing
End Sub
Merci pour votre aide.
Configuration: Windows XP Firefox 2.0
3 réponses
-
-
bonjour
Essaye ce code (je ne l'ai pas testé).
Les données seront collées dans la feuille courante à partir de la ligne 2, colonnes A à E.
Private Sub ListeFichiersDans(ByVal NomDossier As String) Dim FSO As Scripting.FileSystemObject Dim DossierSource As Scripting.Folder Dim Fichier As Scripting.File Dim x As Long Dim Lig As Integer Dim i As Integer Dim d(5) Set FSO = New Scripting.FileSystemObject Set DossierSource = FSO.GetFolder(NomDossier) Lig = 2 x = 0 For Each Fichier In DossierSource.Files x = x + 1 Workbooks.Open Filename:=Fichier Sheets("Paramètres").Select 'mes données à récupérer doivent être ici d(1) = Range("C5").Value d(2) = Range("C6").Value d(3) = Range("C8").Value d(4) = Range("C9").Value d(5) = Range("C10").Value ActiveWorkbook.Close False 'copie des données For i = 1 To 5 Cells(Lig, i).Value = d(i) Next i Lig = Lig + 1 Next Fichier MsgBox "Nb Fichiers : " & x Set Fichier = Nothing End Sub
à plus -
Hello,
La meilleure façon pour récuperer les données d'un autre fichier Excel en VBA est d'ouvrir le fichier source (sans le rendre visible), recuperer les données et fermer le fichier source.
Le code sur le lien ci-dessous fonctionne parfaitement chez moi :
vba-useful.blogspot.fr/2013/12/how-do-i-retrieve-data-from-another.html
+