IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

cumul de fichier


Sujet :

Excel

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut cumul de fichier
    Bonjour

    je suis possession de 365 fichier excel avec un nom et un format identique contenus dans des dossier normaliser du type jour_mois. ce qui donne \\jj_mm\fichier.xls.

    J'ai besoin de crée un fichier faisant une recopie automatique d'un plage de cellule de chaque fichier ( afin d'obtenir toutes les données de l'année).
    En voulant etre parfait dans la premiere colone l'ideal serait de mettre la date ( nom du repertoire )

    Merci pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour Latouka,

    A moins que quelqu'un ait une idée, je vois mal comment vous allez pouvoir consolider des données de 365 fichiers dans un autre à partir des fonctions d'Excel.

    Par contre une procédure VBA le fait facilement, mais pour ce faire il manque des précisions.

    Amicalement.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut precision
    afin de preciser

    ce sont les cellules de B8 à CD30 à prendre dans chaques fichiers et à ajouter pour générer un fichier de plus de 9000 lignes a partir de la ligne 2.

    j'espere apporter suffisament de precision

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re Latouka,

    Je peux vour fournir sans problème le code.

    Il faut quand même me laisser un peu de temps pour le créer et bien sûr comme toujours dans ce cas en contrôler le bon fonctionnement.

    Amicalement.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Re Latouka,,

    J'ai encore besoin d'une précision :

    Vous dîtes que vous avez 365 fichiers à traiter.

    Est-ce à dire que vous lancez le traitement en début d'année pour l'année précédente ?

    ou voulez-vous pouvoir le lancer en cours d'année ?

    C'est surtout pour le traitement de l'année bissextile que je pose cette question car suivant le cas il y aura une petite différence.

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut nombre de jour
    de maniere ideal je devrais pouvoir le lancer n'importe quand dans l'année sachant que j'ai des dossiers depuis 2005.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Ok, pas de problème, il vous sera demandé au lancement de taper l'année de traitement.

  8. #8
    Invité
    Invité(e)
    Par défaut
    J'ai oublié : encore une question qui se pose à travers votre dernière réponse.

    Vos fichiers se trouve des sous-répertoires dont le nom est jj_mm.

    Vous avez donc je suppose ces sous-répertoires attachés à d'autres sous-répertoires dont le nom est l'année ?

    Sous quel format exactement (car il faudra bien indiquer par une variable le nom de ceux-ci) ?

  9. #9
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonsoir

    Tu peux tester cette procédure qui boucle sur tous les classeurs fermés d'un répertoire pour extraire le contenu d'une plage de cellules.
    (Tous les classeurs doivent contenir une feuille nommée "Feuil1")


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Sub extractionPlageCellules_ClasseursFermes()
    Dim Source As Object, Rst As Object, ADOCommand As Object
    Dim Fichier As String, Repertoire As String
    Dim Cellule As String, Feuille As String
     
    Repertoire = "C:\NomDossier"
    Cellule = "B5:G20" 'plage de cellules à extraire
    Feuille = "Feuil1$" 'n'oubliez pas d'ajouter $ au nom de la feuille
     
    'Définit le répertoire contenant les classeurs
    Fichier = Dir(Repertoire & "\*.xls")
     
     
    'Boucle sur tous les classeurs fermés du répertoire cible
    Do While Fichier <> ""
        Set Source = CreateObject("ADODB.Connection")
        Source.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=" & Repertoire & "\" & Fichier & _
            ";Extended Properties=""Excel 8.0;HDR=No;"";"
     
        Set ADOCommand = CreateObject("ADODB.Command")
        With ADOCommand
            .ActiveConnection = Source
            .CommandText = "SELECT * FROM `" & Feuille & Cellule & "`"
        End With
     
        Set Rst = CreateObject("ADODB.Recordset")
        Rst.Open ADOCommand, , 1, 3 '1=adOpenKeyset, 3=adLockOptimistic
     
        Set Rst = Source.Execute("`" & Feuille & Cellule & "`")
        Range("A" & Range("A65536").End(xlUp).Row + 1).CopyFromRecordset Rst
     
        Rst.Close
        Source.Close
        Set Source = Nothing
        Set Rst = Nothing
        Set ADOCommand = Nothing
     
    Fichier = Dir
    Loop
    End Sub


    bonne soirée
    michel

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonsoir SilkyRoad,

    Merci d'avoir donné votre solution aussi vite, car j'aurais passé du temps pour rien.

    J'ai "peut-être" le tort de vouloir pousser trop loin l'automatisation et de la personnaliser.
    J'essaierai d'en tenir compte une prochaine fois, le cas échéant.

    Bonne soirée.

Discussions similaires

  1. cumul de lignes dans un fichier
    Par vince2005 dans le forum Langage
    Réponses: 3
    Dernier message: 30/12/2013, 14h20
  2. Cumul taille des fichiers d'un répertoire
    Par altair8080 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 05/08/2013, 16h54
  3. Réponses: 3
    Dernier message: 02/06/2010, 18h22
  4. Cumuler et synthétiser 2000 fichiers en 1 seul
    Par Yanninho dans le forum Excel
    Réponses: 2
    Dernier message: 28/11/2008, 15h06
  5. Traitement de cumul de montants sur un fichier plat
    Par desbrandesq dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 15/05/2007, 12h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo