Récupérer des données ds une feuille excel

Résolu
shishumi -  
eddy_bzh Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -
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 :
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.
A voir également:

3 réponses

turc54 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   4
 
comment on fait pour entrer une formule dans excel stp
3
shishumi Messages postés 18 Date d'inscription   Statut Membre Dernière intervention  
 
cela dépend de quelle formule tu veux utiliser.
si c'est une formule basic il faut écrire dans ta cellule A3 =somme(A1;A2)
sinon pour du code VBA il faut aller dans le menu option -> macro -> Visual Basic Editor.
0
LePierre Messages postés 249 Date d'inscription   Statut Membre Dernière intervention   338
 
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
1
shishumi Messages postés 18 Date d'inscription   Statut Membre Dernière intervention  
 
Merci LePierre pour ta réponse.
c'est exactement ce qu'il me fallait.
0
eddy_bzh Messages postés 1 Date d'inscription   Statut Membre Dernière intervention  
 
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

+
0