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

Macros et VBA Excel Discussion :

Copier une plage de données de plusieurs feuilles et centraliser sur une seule [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Copier une plage de données de plusieurs feuilles et centraliser sur une seule
    Salut le forum

    Je vous remercie d'avoir accepté mon inscription.
    Je souhaite beaucoup apprendre à travers ce forum car suis noviste en vba.
    Voici ce qui m'a conduit vers vous:
    J'ai un fichier comportant plusieurs feuilles (50).
    Je dois copiers la zone en cours de chaque feuille et les coller sur la feuille "CENTRALISATION".
    Comment automatiser cela sachant que la plage va de A2:AE?
    NB:les feuilles à ne copier sont "CENTRALISATION" et "01000".
    Cordiales salutations aux bonnes volontés

  2. #2
    Membre expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 869
    Points : 3 442
    Points
    3 442
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    J'ai pas trop compris ta plage
    Citation Envoyé par Tanga Voir le message
    ...Comment automatiser cela sachant que la plage va de A2:AE?
    et ta plage est-elle la même sur toute tes feuilles (y compris "CENTRALISATION")

    A+
    Ils ne savaient pas que c'était impossible ... du coup ils l'ont fait (Mark Twain)

    n'oubliez pas de si les messages vous aide ou sont pertinents et de mettre quand cela est !

  3. #3
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Bonjour, bonjour !

    Citation Envoyé par Tanga Voir le message
    Comment automatiser cela sachant que la plage va de A2:AE?
    Et cela donne quoi avec l'Enregistreur de macros ?! (voir le tutoriel)
    Sinon dans le forum Contribuez il y a déjà un code pour ce sujet …

    _____________________________________________________________________________________________________
    Je suis Charlie, Bardo, Sousse
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  4. #4
    Candidat au Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Bonjour Marc-L et Igloobel

    Merci pour vos interventions.
    Le nombre de colonne des feuilles à copier est identique (A:AE).
    Par contre la plage des feuilles à copier varie selon chaque feuille.
    La zone à copier est A2 jusqu'à la dernière cellule non vide de AE.
    Espérant m'avoir fait comprendre.

  5. #5
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut




    Moi aussi j'avais espéré me faire comprendre : il y a déjà tout ce qu'il faut dans le forum Contribuez

    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  6. #6
    Candidat au Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Oui je vous ai compris.
    Je suis entrain de parcourir ces 2 lien http://www.developpez.net/forums/d12...tre-2003-2010/

    http://www.developpez.net/forums/d13...glet-synthese/
    Mais comment les adapter à mon cas (manque d'expérience).
    Merci de me guider

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 345
    Points : 249
    Points
    249
    Par défaut
    Bonjour,

    Comment tu veux récupérer les données dans la feuille Centralisation ? à chaque fois tu colles en dessous ? Tu voudrais coller sur les mêmes colonnes dans ton fichier Centralisation ?

    Cordialent
    Lorsque vous avez obtenu une réponse satisfaisante à votre discussion, N'oubliez pas de cliquer sur

    L'erreur n'annule pas la valeur de l'effort accompli.

  8. #8
    Candidat au Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Bonjour aziz1015

    Merci pour votre observation.
    omment tu veux récupérer les données dans la feuille Centralisation ? à chaque fois tu colles en dessous ? Tu voudrais coller sur les mêmes colonnes dans ton fichier Centralisation ?
    Oui je souhaite que le collage se fasse toujours sur la colonne A (en dessous de la dernière cellule vide de la colonne A).
    Oui le collage devra se faire sur les meme colonnes.
    merci

  9. #9
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 345
    Points : 249
    Points
    249
    Par défaut
    Re,

    Comme l'a signalé Marc-L, tu as tout ce qu'il faut dans Contribuez, plus précisément ce code qui fonctionne très bien :

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    Sub CopierLesDonneesDansSynthese()
     
    Dim ShSynthese As Worksheet
    Dim Sh As Worksheet
    Dim ShEnCours As Worksheet
     
    Dim AireACopier As Range
     
    Dim LigneDeTitreSynthese As Long
    Dim DerniereLigneSynthese As Long
    Dim PremiereColonneSynthese As Long
    Dim LigneDebutSynthese As Long
     
     
     
        Application.ScreenUpdating = False
     
        Set ShSynthese = Sheets("CENTRALISATION")
        LigneDeTitreSynthese = 10
        PremiereColonneSynthese = 1
     
        ' Effacement de la feuille synthèse
        ShSynthese.Range(ShSynthese.Cells(LigneDeTitreSynthese + 1, 1), ShSynthese.Cells(ShSynthese.Rows.Count, ShSynthese.Columns.Count)).ClearContents
        DerniereLigneSynthese = ShSynthese.Cells(ShSynthese.Rows.Count, PremiereColonneSynthese).End(xlUp).Row
     
        For Each Sh In Worksheets
     
            If Sh.Name <> "Synthèse" Then
               Set ShEnCours = Sheets(Sh.Name)
                Set AireACopier = ShEnCours.Range("A2:AE10000")
     
               With ShSynthese
                    LigneDebutSynthese = DerniereLigneSynthese
                    AireACopier.Copy
                    .Cells(DerniereLigneSynthese + 1, PremiereColonneSynthese).Select
                    ShSynthese.Paste
                    DerniereLigneSynthese = ShSynthese.Cells(ShSynthese.Rows.Count, PremiereColonneSynthese).End(xlUp).Row
               End With
     
               Set AireACopier = Nothing
               Set ShEnCours = Nothing
     
           End If
     
        Next Sh
     
        ShSynthese.Cells(LigneDeTitreSynthese, 1).Activate
        Set ShSynthese = Nothing
        Application.ScreenUpdating = True
     
     
    End Sub
    Cordialement
    Lorsque vous avez obtenu une réponse satisfaisante à votre discussion, N'oubliez pas de cliquer sur

    L'erreur n'annule pas la valeur de l'effort accompli.

  10. #10
    Candidat au Club
    Homme Profil pro
    Consultant fonctionnel
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Salut Aziz1015

    Merci pour ce code.
    Je commençais à l'expérimenter et n'arrivais pas car certains éléments indésirable apparaissaient dans la feuille "CENTRALISATION".
    J'ai essayé de revoir cette partie du code en ajoutant toutes les feuilles à ne pas copier et ca marché.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sh.Name <> "CENTRALISATION" And Sh.Name <> "Synthèse" And Sh.Name <> "01000" And Sh.Name <> "Evolution" Then
    Merci pour votre assistance.
    Je vais essayer de bien comprendre le code de bout en bout.
    Si vous avez des idées pouvant m'aider à comprendre facilement les choses n'hésitez pas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Copie d'une plage de donnée depuis 53 feuille
    Par dudux2 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/03/2012, 05h19
  2. Decode sur une plage de données
    Par gubule dans le forum SQL
    Réponses: 2
    Dernier message: 25/01/2011, 10h44
  3. Condition sur une plage de donnes pas tjs renseignée
    Par stof dans le forum Langage SQL
    Réponses: 6
    Dernier message: 21/06/2010, 16h13
  4. Réponses: 1
    Dernier message: 23/09/2009, 03h23
  5. centrer l'affichage sur une plage de données
    Par lapa-jh dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/06/2007, 05h29

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