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 :

Copie coller à la suite [Toutes versions]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut Copie coller à la suite
    Bonjour à tous,

    j'ai deux feuilles nommées "Feuil1" et "Feuil 2". les colonnes exploitées sont A à H. elles ont les mêmes entêtes.J'aimerais les coller les unes à la suite des autres dans la feuille de synthèse Récap. Avant tout, j'efface à chaque fois les données présentes dans l'onglet "Récap". Je souhaiterais lancer la macro depuis la feuille Feuille "A".

    Actuellement mon code , il fonctionne mais il faut absolument le lancer depuis la feuille de synthèse. J'aimerais le lancer depuis la feuille "A".



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Range("A2:H" & Range("A" & Rows.Count).End(xlUp).Row).ClearContents
     
     
    For Each f In Worksheets(Array("Feuil1", "Feuil2"))
     
            If f.Name <> ActiveSheet.Name Then
     
                f.Range("A2:H" & f.Range("A" & Rows.Count).End(xlUp).Row).Copy
                lgn = Range("A" & Rows.Count).End(xlUp)(2).Row
                Range("A" & lgn).PasteSpecial xlPasteAll
            End If
        Next f
        Range("A" & Rows.Count).End(xlUp).Select
        MsgBox "Travail terminé"

  2. #2
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 78
    Par défaut
    si t'écris Range("A" & blabla) tout seul il fera par défaut le traitement dans la feuille active, si tu veux "bloquer" sur une feuille tu rajoutes la feuille avant : Sheets("Récap").Range("A" & blabla).


    j'ai pas pu m'empécher de lire "Travail Terminé !" avec une voix d'orc

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    Oui mais quand je crée un bouton depuis la feuille"A" pour lancer ma macro de copie coller dans la feuille"Récap" la macro ne fonctionne pas bien.j'ai un messsage d'erreur 400.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Worksheets("Récap").Range("A2:H" & Range("A" & Rows.Count).End(xlUp).Row).ClearContents
     
     
    For Each f In Worksheets(Array("Feuil1", "Feuil2"))
     
            If f.Name <> "Recap" Then
     
                f.Range("A2:H" & f.Range("A" & Rows.Count).End(xlUp).Row).Copy
                lgn = Range("A" & Rows.Count).End(xlUp)(2).Row
                Worksheets("Recap").Range("A" & lgn).PasteSpecial xlPasteAll
            End If
        Next f
        Range("A" & Rows.Count).End(xlUp).Select
        MsgBox "ok"

  4. #4
    Expert éminent
    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
    Par défaut


    Bonjour, bonjour !

    Conformément aux règles du forum, merci d'éditer vos messages afin de baliser le code via l'icône dédiée !
    Cela sera plus pratique et côté lisibilité et côté indications des numéros de lignes à modifier …



    ______________________________________________________________________________________________________
    Je suis Paris, Charlie, …

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    Ok c noté

    En cherchant j'ai trouvé mais peut être que vous avez une solution plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Const LTot As Long = 100000
     
    Worksheets("feuil1").Range("A2:H" & LTot).ClearContents
    cpt = Worksheets("feuil1").Range("A" & Rows.Count).End(xlUp).Row
        Worksheets("feuil1").Range("A2:H" & cpt).Copy
     
         Worksheets("Récap").Range("A2:H" & cpt).PasteSpecial xlPasteAll
    j = Worksheets("feuil2").Range("A" & Rows.Count).End(xlUp).Row
          Worksheets("feuil2").Range("A2:H" & j).Copy
     
          Worksheets("Récap").Range("A" & cpt + 1).PasteSpecial xlPasteAll

  6. #6
    Expert éminent
    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
    Par défaut




    As-tu testé ton code ? Est-tu sûr de ta ligne n°3 ?!

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    Oui, j'ai testé et ça efface tout . Pourquoi le code est faux? Pourrais tu me donner stp un autre code plus simple qui répond à ma macro sinon ça fonctionne.

  8. #8
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim F As Worksheet
     
    For Each F In Worksheets(Array("Feuil1", "Feuil2"))
        If F.Name <> "Recap" Then
            F.Range("A2:H" & F.Range("A" & Rows.Count).End(xlUp).Row).Copy Worksheets("Recap").Range("A" & Rows.Count).End(xlUp)(2)
        End If
    Next F
    MsgBox "ok"

  9. #9
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    Merci beaucoup mais j'ai une erreur de compilation quand je mets le code.

  10. #10
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Sur quelle ligne?

  11. #11
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    il me met erreur de compilation sur le sub copie(). j'ai l'impression que sur la ligne 5 après le copy

  12. #12
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    J'ai testé mon code tel que je l'ai écris sur un fichier bidon sans erreur.
    Peut être tu as loupé quelque chose.

    Sinon mets ton code comme tu l'as écris

  13. #13
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    Merci Mercatog,

    Ton code passe très bien.

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

Discussions similaires

  1. [Toutes versions] Copie coller à la suite dans un feuille de synthèse
    Par marccelestins dans le forum Microsoft Office
    Réponses: 1
    Dernier message: 17/02/2016, 15h46
  2. Réponses: 8
    Dernier message: 11/12/2007, 17h04
  3. [OpenOffice][Tableur] Petite maro copie coller.
    Par bigboss60 dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 12/10/2007, 15h23
  4. gérer le copie coller sur un Datagridview
    Par wodel dans le forum Windows Forms
    Réponses: 3
    Dernier message: 01/05/2007, 19h55
  5. copie coller
    Par tanjonaravelson dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 11/11/2004, 10h56

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