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 :

Copier des onglets vers nouveau classeur avec Variable [XL-2003]


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Points : 7
    Points
    7
    Par défaut Copier des onglets vers nouveau classeur avec Variable
    bonjour à toutes et tous,

    je cherche à copier des onglets d'un classeur vers un nouveau classeur.
    La ligne de code :
    Sheets(Array("Onglet2", "Onglet1")).copy
    fait exactement ce que je souhaite à condition que le nom des onglets ne change pas...

    Dans mon cas, j'ai déclaré la variable suivante :

    Dim sNomsDesOnglets As String

    et j'enregistre le nom des onglets à l'aide d'une boucle dans cette variable du coup ma variable sNomDesOnglets = "Onglet1, Onglet2"

    Mon problème apparait donc au moment où le programme arrive sur la ligne de code suivante :
    sheets(Array(sNomsDesOnglets)).copy

    Le message d'erreur est le suivant :
    Erreur d'execution '9' :
    L'indice n'appartient pas à la sélection.


    si je comprends il ne reconnait pas le nom de mes onglets, mais comment corriger ce problème...

    Un grand MERCI par avancepour votre aide précieuse.
    Cordialement.

  2. #2
    Membre émérite Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Points : 2 662
    Points
    2 662
    Par défaut
    Salut,

    A moins que le nombre de feuille à copier soit toujours identique je ne vois pas trop comment utiliser la Array, car comme tu l'as constaté on ne peut pas intégrer les virgules dans la concaténation.

    A ta place je ferais le .Copy dans la boucle, ça va ralonger un peu le temps d'exécution mais au moins ca passe.

    Eventuellement un Select Case mais ça suppose de connaître le min et max de feuille à copier

    A+

  3. #3
    Futur Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 8
    Points : 7
    Points
    7
    Par défaut MERCI
    Ok merci pour l'info, je contourne donc le problème en copiant l'onglet dans ma boucle...

    Encore merci !

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

Discussions similaires

  1. [XL-2010] Copier des onglets d'un fichier source vers un nouveau classeur + autres boucles
    Par P4nd0r3 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/04/2015, 18h14
  2. Réponses: 4
    Dernier message: 23/10/2013, 16h28
  3. [XL-2007] Excel plante avec macro sauvegarde feuille vers nouveau classeur avec nom spécifique
    Par stephadm dans le forum Macros et VBA Excel
    Réponses: 32
    Dernier message: 10/05/2012, 14h59
  4. [XL-2003] copier des feuilles dans nouveau classeur
    Par JohnNC115 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/01/2011, 08h25
  5. [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, 12h36

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