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 :

{VBA Excel}Recopie de plusieurs Feuilles


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 208
    Par défaut {VBA Excel}Recopie de plusieurs Feuilles
    Bonjour

    J'ai un pti soucis (hé oui comme toujours)
    j'ai disons un fichier excel qui contient 21 macros pour effectuer des recopies particulières dans 20 feuilles
    et j'ai une macro qui lance toutes les macros
    ce que je voudrais faire

    c'est de faire une macro qui recopie toutes les feuilles dans une seulle feuille
    (recopier la feuil1 apres la feuil2 apres la feuil3 jusqu'a la feuil20)

    j'ai tester de recopie de feuille trouver sur l'aide mais ca ne me convient pas du tout pour ce que je cherche donc si vous avez une boussole pour m'indiquer le nord

    merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Déjà donné plusieurs fois sur ce forum, la solution...
    Consiste à passer toutes les feuilles de ton classeur en revue sauf la feuille "cumul", de chercher la plage à copier sur chaque feuille, de chercher la dernière ligne dans ta feuille "cumul" et de copier la plage à la suite avec copy destination. Ce qui devrait donner un truc comme ça, sans filet
    Sub CopieToutesLesFeuillesAlaSuite()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim LaFeuille As Worksheet
    ActiveWorkbook.Sheets.Add Before:=Worksheets(Worksheets.Count)
     
    Set FL1 = ActiveSheet
    FL1.Name = "FeuilleCumul"
        For Each LaFeuille In ActiveWorkbook.Worksheets
            If Not LaFeuille.Name = FL1.Name Then
               LaFeuille.Range(LaFeuille.Range("A1:" & LaFeuille.Range("A1").SpecialCells(xlCellTypeLastCell).Address).Address).Copy _
               destination:=Cells(FL1.Range("A1").SpecialCells(xlCellTypeLastCell).Row + 1, 1)
            End If
        Next
    Set FL1 = Nothing
    End Sub
    Tu adaptes

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 208
    Par défaut
    je n'arrive pas a adapter ton code
    si tu pouvais me montrer stp

    je sais on ne doit pas demander aux autres de faire son boulot
    mais la je suis perdu (un peu comme toujours)

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Place ce code dans un module standard du classeur dont tu veux cumuler les feuilles et lance la macro. Elle s'adapte à tous les classeurs dès lors que c'est le classeur actif. Il ajoute une feuille, la rebaptise, cherche la plage à copier qu'il copie à partir de la première ligne vide de la feuille ajoutée, ici "FeuilleCumul". Tu n'as que ce nom à changer.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 208
    Par défaut
    merci
    tout marche bien

    par contre j'ai un soucis que j'avais pas prevu
    c'est ce fichier ce mets a jour automatiquement

    donc j'efface le fichier pour recommencer l'operation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("A180-Produits").Delete
    donc c'est réglé

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu as pensé aux entêtes ? J'attendais la question, moi !

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

Discussions similaires

  1. [VBA][excel]comment copier la feuille selectionnée
    Par megapacman dans le forum Access
    Réponses: 2
    Dernier message: 21/03/2006, 13h03
  2. [EXCEL] sélection de plusieurs feuilles par code
    Par CCRNP dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/03/2006, 18h48
  3. [VBA Excel] Remettre toute une feuille par défaut
    Par loacast dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/12/2005, 16h56
  4. excel VBA comment recopier sur plusieurs feuilles
    Par floflo2006 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/11/2005, 15h56
  5. [VBA Excel] Effacer rapidement une feuille
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/10/2002, 13h12

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