Consolidation de donné de plusieurs classeurs avec une macro VBA.

angelamuss

XLDnaute Nouveau
Bonjour, :D

Je vous explique mon besoin:
J'ai un répertoire ou j'ai mis 100 classeurs représentant chacun l'audit d'un magasin d'une ville. Ils sont tous composés de la même manière.
A l'intérieur il y a des questions ou 3 cas de réponse sont possible
OUI NON NC
A chaque question on met un 1 dans la colonne correspondant.
Dans un classeur différent (COMPILATION) je souhaiterais consolider tous mes audits, c'est à dire que sur un même classeur (audit vierge) je souhaiterais avoir le total de OUI NON NC de ma première question, la seconde...de tous mes audit

Donc il faudrait que ma compilation cherche et additionne automatiquement la valeur de mes cellules. Par exemple si ma première reponse est en C5 sur ma compil il faut qu'il additionne toute les valeur de mes cellules C5 de mon répertoire.

Je peux pas envoyer le modèle il pése plus de 3MO:rolleyes:

Merci de m'aider si vous voyez ce que je veux dire :)
 

smotty

XLDnaute Occasionnel
Re : Consolidation de donné de plusieurs classeurs avec une macro VBA.

Bonjour,

Voici un début:

Code:
Sub RechercherFichiers()
    Dim Rep As String
    Dim wk As Workbook
    dim wkDest as workbook
    
    set wkdest=thisworkbook


    Rep = wkdest.Path & "\REP FICHIERS\"
    
    s = Dir(Rep)
    
    Do
       if s like "*.xlsx" then
 
            Set wk = CreateObject(Rep & s)
        

            '****traitement de la recherche
            wk.feuil1.range("A1").copy wkdest.feuil1.range("A1")
        
             wk.Close savechanges:=False
        end if
        
        s = Dir
    Loop While s <> ""
End Sub

A adapter au répertoire concerné

Recherche tous les fichiers du répertoire et crée une variable associée à chaque fichier Excel.

Exemple d'utilisation des deux variables workbook

Je te conseille de copier tous les éléments dans une seule feuille puis de créer un TCD.

J'essaie de te faire une procedure exemple pour le prochain message

A+

smotty
 
Dernière édition:

smotty

XLDnaute Occasionnel
Re : Consolidation de donné de plusieurs classeurs avec une macro VBA.

re

voici un exemple à adapter et tester:

Code:
Sub RechercherFichiers()
    Dim Rep As String
    Dim wk As Workbook
    Dim l As Long
    
    l = 1
    
    Rep = ThisWorkbook.Path & "\REP FICHIERS\"
    
    s = Dir(Rep)
    
    Do
        
        Set wk = CreateObject(Rep & s)
        
        wk.Worksheets(1).Range("A1").CurrentRegion.Copy wkdest.Worksheets(1).Range("A" & l)
        
        'prochaine ligne où seront copiées les données
        l = wkdest.[A1000000].End(xlUp).Row + 1
        
        wk.Close savechanges:=False
        
        s = Dir
    Loop While s <> ""
End Sub

Reste à créer un TCD sur les données de la feuil1.

cdt

smotty
 

smotty

XLDnaute Occasionnel
Re : Consolidation de donné de plusieurs classeurs avec une macro VBA.

Bonjour à tous,

Whaou!!! merci Boisgontier!!

Je ne connaissais pas cette possibilité. Après tout ce temps passé sur Excel je ne m'étais jamais attardé sur le consoidation des données.

J'étais sur le point de développer un complément Excel pour le faire bref réinventer le fil à couper le beurre.

Merci pour nous avoir montrer le chemin (sans vouloir paraitre religieux)

cdt

smotty
 

Discussions similaires

Statistiques des forums

Discussions
312 339
Messages
2 087 416
Membres
103 542
dernier inscrit
feenix