Ouvrir les fichiers excel d'un répertoire et faire la somme d'une cellule [Résolu]

Messages postés
8
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
4 avril 2012
- - Dernière réponse : srigoulot
Messages postés
8
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
4 avril 2012
- 4 avril 2012 à 15:37
Bonjour,

je débute enVBA.
Comment récupérer, dans un fichier excel récap, la valeur d'une cellule donnée dans tous les fichiers excel contenu dans un même répertoire.

exemple :
Dans le fichier récap, dans la feuil1, en A1, je voudrais avoir
=SOMME(
[Monrep/1.xls]Feuil1!A1.value;
[Monrep/2.xls]Feuil1!A1.value;
[Monrep/3.xls]Feuil1!A1.value;
[Monrep/4.xls]Feuil1!A1.value;
...)

évidemment je n'ai pas le nom des fichiers du répertoire.

Si quelqu'un peut m'aiguiller. Merci d'avance !

 riggss !
Afficher la suite 

8 réponses

Meilleure réponse
3
Merci
Bonjour,

j'ai retrouvé se code dont je n'ai pas la source


J'ai la vague impression que c'est sur le site de Frédéric Sigonneau.

Une adresse a garder dans ses favoris ou ses signets quand on pratique la Vbalogie.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 193 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Utilisateur anonyme
0
Merci
Bonjour,

dans un fichier excel récap

On lance Excel, on crée un nouveau classeur, on l'enregistre sous le nom de récap. Ensuite on appuie simultanément sur les touches ALT et F11. Ensuite on clique sur le ? au bout de la barre des menus. Ensuite on cherche un peu

dans tous les fichiers excel contenu dans un même répertoire.

> Fonction Dir

la valeur d'une cellule donnée

==> Objets Sheet, Range et Workbook

> Collections Sheets et Workbooks

> Opérateurs + et +

Instructions do, While, For et For Each pour les boucles

Copier-Coller pour les exemples.
Commenter la réponse de Utilisateur anonyme
Messages postés
115
Date d'inscription
dimanche 6 avril 2003
Statut
Membre
Dernière intervention
29 juin 2012
0
Merci
bonjour
j'ai retrouvé se code dont je n'ai pas la source
je ne l'ai pas testé

'récupération de données dans un classeur fermé
'(méthode "classique" par établissement d'une liaison temporaire)
'(c'est aussi la technique habituellement conseillée pour essayer
'de récupérer des données d'un classeur endommagé)

Sub test()
 GetValuesFromAClosedWorkbook "D:", "TestADO.xls", "Feuil1", "A1:H25"
End Sub

Sub GetValuesFromAClosedWorkbook(fPath As String, _
   fName As String, sName, cellRange As String)
   'Ron De Bruin, mpep
   'le paramètre 'cellRange' doit désigner
   '*une* plage de cellules *contigües*
   With ActiveSheet.Range(cellRange)
     .Formula = "='" & fPath & "\[" & fName & "]" _
      & sName & "'!" & cellRange
     .Value = .Value
   End With
End Sub


@+JP
Commenter la réponse de mjpmjp
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Bonjour,

J'apprécie beaucoup la réponse faire par cmarcotte, que je salue avec chaleur.
Elle montre bien une volonté honorable d'apprendre à pêcher (plutôt que de donner un poisson).
J'encourage donc srigoulot à se "pencher" sur cette réponse avec le plus grand soin.
Nous serons là ensuite pour corriger au besoin les efforts faits dans ce sens infructueusement.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Commenter la réponse de ucfoutu
Messages postés
8
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
4 avril 2012
0
Merci
Merci à tous pour vos réponses.

Je connais des languages de programmation mais pas trop VBA.
Faire une boucle n'est pas un soucis pour moi par contre je ne connais pas la grammaire.
Ca n'est pas par volonté de ne pas chercher mais juste avoir vos lumières si le codage était aisé et si vous aviez une piste (merci tout spécialement à mjpmjp ).

Je vois que c'est possible et que la prochaine fois je partirai à la pêche

Je laisserai le fruit de ma pêche dans ce fil. Ca pourra servir à d'autres, peut-être.


-------------------------------------------------------------------------------
Citation : Le savoir ne vaut rien sans être partagé et ne vit pas s'il est jalousé.
Commenter la réponse de srigoulot
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Ca n'est pas par volonté de ne pas chercher mais juste avoir vos lumières si le codage était aisé et si vous aviez une piste

Commence donc par le commencement (puisqu'il va bien valoir commencer par répertorier les fichiers concernés, non ?) ===>> et cmarcotte a écrit, en ce qui concerne ce 1er aspect : ===>>
dans tous les fichiers excel contenu dans un même répertoire.
> Fonction Dir

et donc : ===>> 1er réflexe ===>> ouvrir ton aide VBA pour y voir :
- ce qu'est cette fonction et comment on l'utilise (exemple fourni dans l'aide).
C'est ainsi que l'on comble la difficulté résultant de :
par contre je ne connais pas la grammaire



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Commenter la réponse de ucfoutu
Messages postés
115
Date d'inscription
dimanche 6 avril 2003
Statut
Membre
Dernière intervention
29 juin 2012
0
Merci
bonjour
merci cmarcotte pour ce lien

@+JP
Commenter la réponse de mjpmjp
Messages postés
8
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
4 avril 2012
0
Merci
Merci cmarcotte, c'est ce que j'attendais ...
Là je vais pouvoir me débrouiller !
Commenter la réponse de srigoulot