Aller chercher des données dans un dossier et les envoyer dans un fichier

Bonjour,

j'ai encore besoin de vos lumières.

Je fais un programme de gestion des bons de commande d'une société ayant 8 succursales.

J'ai donc huit bons de commande identiques, se distinguant par une numérotation débutant par les trois premières lettres du magasin suivi d'un numéro s'incrémentant automatiquement. Tout ceci fonctionne !

Mes bons de commande vont dans une boite qui est lisible par la direction.

Je voudrais, à partir de cette boite , récupérer les données que l'on me demande et les incorporer dans un fichier indépendant.

Dans le fichier de chaque magasin, j'ai déjà une feuille "Historique Commande" où se trouvent les infos qui devraient aller dans le fichier global.Donc une recopie de cette feuille conviendrait parfaitement.

Pour résumer , j'ai magasin 1, magasin 2 ... qui arrivent dans ma . Il me faut une feuille dans un dossier "Global" qui me reprendra au fur et à mesure les données de tous les magasins et dans laquelle je pourrai faire diverses opérations telles des additions des ventes, des ajouts de prix d'achats, des coéfficients etc.

Merci de votre aide.

J'ai dû oter le nom de la boite en question, car il n'est pas accepté ici !

Bonjour,

il faudrait des fac-simile des fichiers ... néanmoins, regarde de ce côté si cela correspond à ton besoin https://www.excel-pratique.com/fr/telechargements/utilitaires/collecter-donnees-fiches-individuelles...

en effet, c'est certainement plus aisé avec un exemple !

Je joins en exemple le fichier de l'un des magasins, il y en a 8.

Je voudrais donc reprendre les données de la feuille "Historique Commande" de chaque magasin, au fur et à mesure qu'ils le remplissent et les inscrire dans un fichier "Global" où je retrouverais ainsi l'ensemble des activités sur une même feuille.

Je n'ai pas encore fait de feuille pour ce fichier global, mais ce serait la même présentation que l'Historique Commande de chacun.

Les fichiers des différents magasins sont envoyées sur la Dropbox de la direction

merci pour votre aide

6bc-dinant-7-12.xlsm (227.12 Ko)

Regroupe tes fichiers sous "commandes" et lance la macro ci-dessous

Option Explicit

    Dim wbk1 As Workbook, wbk2 As Workbook
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim rng1 As Range, rng2 As Range

    Dim chemin$, monFichier$, onglet$

Sub collecter()

    ' à modifier ...
    chemin = ThisWorkbook.Path & "\commandes\"
    onglet = "Historique_Commande"

    Set wbk1 = ThisWorkbook
    Set ws1 = wbk1.Sheets(onglet)
    ws1.Cells(1).CurrentRegion.Offset(1, 0).ClearContents
    monFichier = Dir(chemin & "*.xlsm")

        Do While monFichier <> ""
            Set wbk2 = Workbooks.Open(chemin & monFichier)
            Set ws2 = wbk2.Sheets(onglet)
            Set rng2 = ws2.Cells(2, 1).CurrentRegion
            Set rng1 = ws1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
            rng1.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
            Application.CutCopyMode = False
            wbk2.Close False
            monFichier = Dir
        Loop

    ws1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select

End Sub
5global.xlsm (15.73 Ko)

Merci beaucoup , quelle réponse rapide !

Je vais essayer cela.

Petite question : les feuilles historique commandé arrivent dans une box. Est ce là que je dois les regrouper en un dossier commande ?

Je vais tâcher de faire cela.

Merci beaucoup

Petite question : les feuilles historique commandé arrivent dans une box. Est ce là que je dois les regrouper en un dossier commande ?

oui, le dossier commande tant créé à côté de ce fichier

Merci beaucoup.

par contre, je ne sais pas ce que je dois modifier ? et aussi, dans le module "global", je ne vois aucune référence aux noms de mes différents "magasins"

je ne suis pas tres fort en VBA, car il y a assez longtemps que j'ai étudié cela et je manque d'expérience ! Merci donc, de me donner encore un peu plus d'explications; j'ai bien compris que le programme va faire une boucle tant qu'il trouve des fichiers à integrer dans mon historique global mais rien de plus.

Merci encore

ok

où se trouve le nom du magasin ?

Bonjour, quel service ! Dépannage jour et nuit !

Le nom du magasin est en fait la localité qui se trouve en A3, chaque magasin à un fichier appelé BC_DINANT pour le magasin de Dinant, idem pour les autres.

Merci et bonne journee

En A3 ? de quel onglet ? dans l'exemple fourni je ne vois rien qui ressemble à Dinant !

Bon, je vais prendre le nom du fichier...

Il n'y a pas toujours de n° de commande, je me fie donc sur les dates pour délimiter la zone à copier.

12global.xlsm (16.46 Ko)

Merci beaucoup Steelson, et mes excuses de ne pas être revenu plus tôt, mais j'ai eu d'autre occupations et je ne reviens vers mon programme que ce samedi matin.

Tout cela m'a l'air très bien, je vais tester cela ce week end.

Tu n'as pas trouvé le nom du magasin en A3, c'est sur la feuille "Bon de Commande"

Excellent week end et protegez vous et les votres

Hello,

j'ai hésité, car sur l'exemple c'est écrit FACEBOOK, et en plus c'est modifiable car c'est un menu déroulant ...

Rechercher des sujets similaires à "aller chercher donnees dossier envoyer fichier"