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 :

[E-02] Copier tout un onglet dans un classeur fermé


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2003
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 26
    Points : 25
    Points
    25
    Par défaut [E-02] Copier tout un onglet dans un classeur fermé
    Bonjour,

    Je sais que le sujet a déjà été abordé et que des tutoriels ont été faits, mais je n'ai pas trouvé la réponse

    J'ai 1 classeur Excel (Excel 2002) qui contient 100 onglets dont je dois copier le contenu dans 100 classeurs différents (1 dans chaque) et qui portent le même nom (mais dans des répertoires différents).

    En VBA, cela prend environ 6 secondes par classeur (ouvrir, copier, coller, sauvegarder et fermer) soit 10 minutes environ au total.

    Mon but est de gagner du temps...

    Je sais que via ADO on peut écrire dans un classeur Excel fermé mais dans mon cas, c'st le contenu complet de chaque onglet qu'il faut copier et celui-ci n'est pas du tout arrangé comme une base de donnée (avec des entêtes bien rangées etc.).

    Donc, pour résumer, comment copier le contenu d'un onglet Excel qui contient de tout vers un autre classeur Excel fermé ?

    Merci
    @+

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 306
    Points : 164
    Points
    164
    Par défaut
    J'imagine que tu utilises déjà les :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    application.screenupdating=false
    et

    Mais comment copies-tu tes donnnées (10 min ca me parait long...)

    tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    MyBk.sheets(A).Copy
    ActiveWorkbook.saveas:="..."
    ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2003
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 26
    Points : 25
    Points
    25
    Par défaut
    Bonjour
    Effectivement j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.ScreenUpdating = False
    Par contre, je ne sais pas ce que c'est

    En fait 10 minutes, cela fait 6 secondes par onglet

    J'ouvre mon document source qui contient 100 onglets et par une boucle,
    - j'ouvre le document receveur sur le bon onglet,
    - je me repositionne sur mon document source sur le bon onglet
    - je fais un un et je copie (CTRL-C)
    - je me déplace sur le document receveur
    - je fais coller CTRL+V une 1ère fois
    - je fais ensuite un collage spécial valeur
    - je sauvegarde le document receveur
    - je passe à l'onglet suivant sur le document source

  4. #4
    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 150
    Points
    20 150
    Par défaut
    bonjour


    Donc, pour résumer, comment copier le contenu d'un onglet Excel qui contient de tout vers un autre classeur Excel fermé ?
    Ce n'est pas possible si tes feuilles contiennent autre chose que des données brutes. Tu devras ouvrir les classeurs pour copier les feuilles.


    bonne journée
    michel

  5. #5
    Nouveau membre du Club
    Inscrit en
    Novembre 2003
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 26
    Points : 25
    Points
    25
    Par défaut
    OK Merci à tous

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

Discussions similaires

  1. [XL-2013] Copier coller 2 onglets dans un nouveau classeur
    Par joac33 dans le forum Excel
    Réponses: 7
    Dernier message: 27/03/2015, 11h07
  2. Réponses: 2
    Dernier message: 29/04/2014, 23h17
  3. [XL-2003] VB Copier/Coller onglet dans nouveaux classeurs avec boucle
    Par Dbiche dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 05/01/2011, 13h36
  4. [Tableaux] copier tout un array dans une autre variable
    Par XavierWRC dans le forum Langage
    Réponses: 3
    Dernier message: 06/01/2010, 18h07
  5. copier onglets dans nouveau classeur
    Par hlander dans le forum Macros et VBA Excel
    Réponses: 29
    Dernier message: 13/02/2009, 11h29

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