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] : Copier feuille Excel dans le même classeur (erreur 9 ou 1004)


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Jordmund
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 181
    Par défaut [VBA] : Copier feuille Excel dans le même classeur (erreur 9 ou 1004)
    Bonjour,

    Je code sous Access une procédure VBA qui va :
    - Créer un fichier Excel
    - Copier des données "génériques" dans la première feuille du classeur
    - Une fois la première feuille générée, je veux duppliquer la feuille n fois et appliquer un autre code => C'est ce point qui pose problème.

    Je génère bien la première feuille, mais je n'arrive pas à la copier dans le même classeur.

    Mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim xlapp as Object
    ''' Traitement pour générer la feuille 1 : OK '''''
    xlapp.Sheets(1).Copy _
            Destination:=xlapp.Sheets(Sheets.Count + 1)
    Le copier coller ne fonctionne pas (code erreur 9)
    J'ai également tenté un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    xlapp.Sheets(1).copy After:=xlapp.Sheets(Sheets.Count)
    Ca ne fonctionne pas non plus (code erreur 1004)

    Pouvez-vous m'aider svp ?

    Merci d'avance pour vos réponses.

  2. #2
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Bonjour Jordmund,

    Est-ce que ta variable xlapp est setée par quelque chose du type Set xlapp = CreateObject("Excel.Application") ?
    Si c'est le cas, ton xlapp ne connait pas l'argument Sheets(1) car tu ne spécifies pas le Workbook.

    Ainsi, xlapp.Workbooks("mon_classeur").Worksheets("ma_feuille"). 'ce que je veux, te permettra d'accéder à ce que tu souhaites.

    N'hésite pas à revenir vers moi !

    Cordialement,
    Kimy

  3. #3
    Membre confirmé Avatar de Jordmund
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 181
    Par défaut
    Oui je l'ai bien settée

    J'ai également tenté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Workbooks(xlapp).Sheets(1).Copy _
        Destination:=Workbooks(xlapp).Sheets(Sheets.Count + 1)
    Ca ne fonctionne pas.

    J'ai également pensé que le soucis venait de faire un copier / coller sur un classeur fermé, j'ai fait un xlapp.Activate mais ca ne résoud pas le problème.

  4. #4
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Jordmund,

    As-tu bien lu ce que je t'ai écris ?
    Workbooks("mon_classeur") est une propriété de Excel.Application !

    Donc c'est xlapp.Workbooks("mon_classeur").Worksheets("ma_feuille")...

    Bref...

  5. #5
    Membre confirmé Avatar de Jordmund
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 181
    Par défaut
    Merci de tes réponses Kimy_Ire,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    xlapp.Workbooks("Classeur1").Sheets(1).Copy _
            Destination:=xlapp.Workbooks("Classeur1").Sheets(Sheets.Count + 1)
    Ca ne fonctionne pas (erreur 9).

  6. #6
    Membre Expert
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Par défaut
    Jordmund,

    Aucun problème avec ça de mon côté :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub creation()
     
    Set xlapp = CreateObject("Excel.Application")
    xlapp.Visible = True
     
    Set xlBook = xlapp.Workbooks.Add
    Set xlSheet = xlBook.Sheets(1)
     
    xlSheet.Range("A1") = "test"
     
    xlSheet.Copy After:=xlBook.Sheets(xlBook.Sheets.Count)
     
    End Sub
    Cordialement,
    Kimy

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

Discussions similaires

  1. [Débutant] Créer plusieurs feuilles excel dans un même classeur- VB.NET
    Par Aiman.elmachi dans le forum VB.NET
    Réponses: 0
    Dernier message: 12/06/2014, 02h18
  2. [WD17] Copier feuille excel vers un autre classeur‎
    Par THOMAS Patrice dans le forum WinDev
    Réponses: 4
    Dernier message: 30/05/2012, 15h17
  3. Réponses: 16
    Dernier message: 31/05/2009, 02h13
  4. Copie de feuilles sélectionnées dans un même classeur
    Par TNC dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 25/09/2008, 17h31
  5. VBA Enregistrement feuille excel dans une feuille word
    Par pedrold75 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/05/2007, 15h36

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