AIde pour consolidation de plusieurs fichiers  Sujet résolu

Pour toutes vos questions à propos d'Excel ...

AIde pour consolidation de plusieurs fichiers

Messagepar nAthOs » 03 Fév 2012, 18:14

Bonjour tout le monde !

Je creer ce nouveau topic sur le conseil de Claude car j'ai besoin d'aide pour la suite de mon projet.

Claude m'a créé ce code qui permet de recuperer les lignes saisie dans differente feuilles et de les ajouter les une à la suites des autres dans une feuille nommée "récap"

Code: Tout sélectionner
Sub Récap()
Dim i%, Sauf
    Sauf = Array("Récap", "demande") 'feuilles à ne pas traiter (à régler)
  Application.ScreenUpdating = False
   
  With Sheets("Récap")
        .Range("b4:n" & .[b65000].End(xlUp).Row + 1).Clear 'efface
  For i = 1 To Worksheets.Count
        If IsError(Application.Match(Worksheets(i).Name, Sauf, 0)) Then
            Sheets(i).Range("b4:n" & Sheets(i).[b65000].End(xlUp).Row + 1).Copy Destination:= _
            .Range("b" & Rows.Count).End(xlUp)(2)
        End If
    Next i
  End With
End Sub


j'ai utilisé ce code dans 12 fichiers nommés "janvier", "fevrier" ... jusqu'à "decembre" et j'ai maintenant besoin d'aide pour adapter ce code afin de creer un fichier nommé "suivi prod thermo" qui soit en mesure de venir récuperer de la meme maniere toutes les lignes des feuilles "récap" de chanque fichier de l'année.
je vous met en piece jointe le fichier "janvier" et le fichier "suivi prod thermo"

je ne me rend pas compte si c'est compliqué d'adapter ce code ou si il s'agit simplement de donner des sources et des destinations différentes mais je ne vois pas comment reussir à le faire afin de compiler les infos de chacunes des feuilles "récap" de chaque mois dans un seul fichier.

merci d'avance à tous !
Fichiers joints
Suivi prod thermo.xlsm
(18.62 Kio) Téléchargé 14 fois
01 - Janvier.xlsm
(62.86 Kio) Téléchargé 13 fois
nAthOs
Utilisateur occasionnel
 
Messages: 10
Inscription: 12 Déc 2011, 16:28
Version Excel: 2010 FR

Re: AIde pour consolidation de plusieurs fichiers

Messagepar Kikooisachef » 03 Fév 2012, 23:23

Bonsoir,
As tu essayer d utiliser la fonction ActiveWorkbook.Name ?
Kikooisachef
Utilisateur occasionnel
 
Messages: 12
Inscription: 27 Août 2011, 19:59
Version Excel: 2003 FR

Re: AIde pour consolidation de plusieurs fichiers

Messagepar nAthOs » 04 Fév 2012, 11:03

salut !

non, je ne connais absolument rien en VBA ou en macro, je suis un gros novice à qui on demande des trucs compliqués alors je me débrouille comme je peux en me faisant aider :/

le code de Claude fonctionne vraiment bien à l’intérieur d'un même fichier excel, il n'y a pas moyen de l'adapter pour qu'il aille chercher les infos dans un autre fichier ?

merci d'avance et excusez moi, je suis vraiment un novice et je ne maitrise pas tous les termes techniques :(
nAthOs
Utilisateur occasionnel
 
Messages: 10
Inscription: 12 Déc 2011, 16:28
Version Excel: 2010 FR

Re: AIde pour consolidation de plusieurs fichiers

Messagepar dubois » 05 Fév 2012, 12:55

Bonjour à tous,

1) créer un répertoire (ici, "Suivi prod thermo_2011")
2) dans ce répertoire, placer les fichiers "1_janvier", "2_février","3_Mars" etc... (on met les indices 1,2,3 etc.. pour tri)
3) dans ce répertoire, placer aussi ce fichier "Récap Annuelle"


Pour 2012, même chose en remplaçant le nom du répertoire "Suivi prod thermo_2012"

"Récap Annuelle" n'est pas à modifier ni renommer selon les années,
il est juste à copier dans le répertoire.
------------------

à noter que le fait de lancer à l'ouverture de chaque fichier mensuel, la macro "Récap" (Open), ralenti le traitement,
est-ce bien utile ?

Je reste persuadé qu'un seul fichier, avec filtre semaine ou mois aurait été plus simple d'emploi
mais bon !

Amicalement
Claude
Fichiers joints
3_Mars.xlsm
(63.65 Kio) Téléchargé 13 fois
2_Février.xlsm
(63.65 Kio) Téléchargé 12 fois
1_Janvier.xlsm
(63.45 Kio) Téléchargé 13 fois
Récap Annuelle.xlsm
(33.55 Kio) Téléchargé 16 fois
Faire simple, c'est ce qui est le plus compliqué ! et vice versa (à méditer)
dubois
Passionné d'Excel
 
Messages: 9252
Inscription: 08 Déc 2007, 12:03
Localisation: MEUDON région parisienne
Version Excel: Vista Office 2007FR

Re: AIde pour consolidation de plusieurs fichiers

Messagepar nAthOs » 06 Fév 2012, 18:17

Bonjour tout le monde !

je ne sais comment te remercier Claude, c'est nickel !!

alors, oui, j'ai lancé la macro automatiquement sur chacun des fichiers mensuels pour éviter de faire faire des manipulations à des gens qui n'y connaissent rien, on verra si ça fonctionne ou pas comme ça.

merci encore de t'être occupé de mon problème.

@+ et bonne soirée
nAthOs
Utilisateur occasionnel
 
Messages: 10
Inscription: 12 Déc 2011, 16:28
Version Excel: 2010 FR

Re: AIde pour consolidation de plusieurs fichiers

Messagepar nAthOs » 07 Fév 2012, 17:00

bonjour tout le monde !

je me permet de relancer ce sujet car j'aurais besoin de deux petites explications au sujet de ce code :

Code: Tout sélectionner
Sub Archive() 'les "Récap" mensuelles de l'année du répertoire
Dim i%, NbC%
Dim FName$, Chemin$, NomFichier$, Wbk$
    Wbk = ActiveWorkbook.Name
    Range("a2:a1000").Clear                                 'efface liste fichiers
   
    '--- Liste les fichiers du répertoire sauf celui-ci ---
   Chemin = ActiveWorkbook.Path & "\"
    FName = Dir(Chemin & "*.xl*")
        Do While FName <> ""
            If FName <> Wbk Then Range("a65536").End(xlUp)(2) = FName
            FName = Dir
        Loop
    If Range("a2") = "" Then MsgBox ("Pas de fichiers dans le répertoire !"): Exit Sub
    '----------------------------------------
   Application.ScreenUpdating = False
    NbC = Range("a65536").End(xlUp).Row
    With Sheets("RécapAnnuelle")
        .Range("b4:n" & .[b65000].End(xlUp).Row + 1).Clear  'efface données
   
        For i = 2 To NbC
            NomFichier = Cells(i, 1)
            Application.DisplayAlerts = False               'si déjà ouvert
           Workbooks.Open Filename:=Chemin & NomFichier
            Application.DisplayAlerts = True
            '--- action ---
           .Range("b" & Rows.Count).End(xlUp)(2) = NomFichier
            .Range("b" & Rows.Count).End(xlUp).Resize(1, 13).Interior.ColorIndex = 8
         
            Sheets("Récap").Range("b4:n" & Sheets("Récap").[b65000].End(xlUp).Row + 1).Copy Destination:= _
            .Range("b" & Rows.Count).End(xlUp)(2)
            ActiveWorkbook.Close False
        Next i
    End With
End Sub
 


le bouton executant la macro doit obligatoirement etre placé sur la feuille ou sont listés les fichiers car la liste des fichiers du repertoire est créée sur la feuille active au moment ou on lance la macro, est il possible de d'indiquer une feuille fixe dans le code afin de permettre de mettre le bouton qui lance la macro sur n'importe quelle feuille mais que la liste des fichiers du repertoire soit toujours sur la meme feuille (une feuille cachée par exemple) ?

le fichier récap annuel doit etre placé dans le repertoire ou sont stockés les fichiers mensuels car le code lui dit de lister les fichiers du repertoire : Chemin = ActiveWorkbook.Path & "\"
comment doit-je ecrire le chemin réseau à la place du "\" pour déplacer le fichier dans un autre repertoire mais qu'il continue de lister les fichiers du repertoire initial ?

merci d'avance :)
nAthOs
Utilisateur occasionnel
 
Messages: 10
Inscription: 12 Déc 2011, 16:28
Version Excel: 2010 FR

Re: AIde pour consolidation de plusieurs fichiers  Sujet résolu

Messagepar nAthOs » 08 Fév 2012, 10:51

hola !

pour faire avancer le sujet, j'ai déja trouvé tout seul comme un grand comment indiquer un repertoire différent du repertoire actif : en ecrivant : Chemin = "C:\Users\nch\Desktop\indicateur rame thermofix\" par exemple.

il reste juste le probleme de la macro qui s'éxecute dans la feuille active, je ne pense pas reussir à changer cela tout seul donc si quelqu'un a une idée je suis preneur :)

merci d'avance !

Edit :

Finalement j'ai trouvé une solution à mon deuxieme probleme en déplacant le bouton executant la macro sur une autre feuille et en masquant la colonne A. je ne sais pas pourquoi je n'y ai pas pensé plus tôt :/

merci !
nAthOs
Utilisateur occasionnel
 
Messages: 10
Inscription: 12 Déc 2011, 16:28
Version Excel: 2010 FR


Retourner vers Excel - VBA

 


  • Sujets similaires
    Réponses
    Vus
    Dernier message

Utilisateurs en ligne

Utilisateurs parcourant ce forum: ait haddou, Bing [Bot] et 19 invités