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

Résolu
shishumi -  
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 :
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

  1. turc54 Messages postés 9 Statut Membre 4
     
    comment on fait pour entrer une formule dans excel stp
    3
    1. shishumi Messages postés 18 Date d'inscription   Statut Membre
       
      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
  2. LePierre Messages postés 249 Statut Membre 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
    1. shishumi Messages postés 18 Date d'inscription   Statut Membre
       
      Merci LePierre pour ta réponse.
      c'est exactement ce qu'il me fallait.
      0
  3. eddy_bzh Messages postés 1 Statut Membre
     
    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