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 :

Référence à l'Objet Workbook


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Novembre 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 9
    Par défaut Référence à l'Objet Workbook
    Bonjour

    Je débute dans la programmation VBA et j'ai un petit souci de référencement d'objet.

    Voila, je lance une macro à partir de mon fichier source qui créé un fchier CSV avec les éléments de la ma feuille 2 initulé TABLEAU. Mon souci est le suivant, à la sortie de ma macro je me retrouve dans mon nouveau fichier et mon fichier d'origine est fermé. Je pense que cela vient d'un mauvais référencement de mon objet WorkBook de ma macro, Pourriez vous m'expliquer mon erreur, merci

    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Sub Export_CSV()
    Dim Classeur, Classeur2 As Workbook
        Set Classeur = ActiveWorkbook
     
        'Selection de la Feuille Tableau
        Classeur.Sheets("TABLEAU").Select
        MsgBox Classeur.Name
     
        Set Classeur2 = ThisWorkbook
     
        MsgBox "Ma référence " & Classeur2.Name
     
        Classeur.SaveAs Filename:="C:\Peupl.csv", FileFormat:=xlCSV, CreateBackup:=False, Local:=True
         'DoEvents
     
         MsgBox Classeur.Name
         MsgBox "Ma référence " & Classeur2.Name
     
        Workbooks("Peupl.csv").Close savechanges:=True
     
        Classeur.Sheets("TABLEAU").Select
     
    End Sub

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    Si tu as un classeur qui s'appelle A et que tu fais SaveAS "B", tu auras sur disque 2 classeurs mais 1 seul ouvert et renommé B

    Par ailleurs je ne comprends pas ce que tu fais avec les variables Classeur et Classeur2. De plus Classeur est un variant.

    EN espérant que cela t'aide,

    PGZ

  3. #3
    Membre habitué
    Inscrit en
    Novembre 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 9
    Par défaut
    Merci pour ces éléments,

    Je suis passé par des variables pour comprendre ce passge de référence vis à vis de l'objet Workbook car mon idée est à partir de mon fichier initial ou se trouve ma macro de créer un autre fichier contenant les données de ma feuille Tableau au format CSV tout en restant dans mon fichier initial.

    Malheureusement lorsque je fais appel à la methode SaveAs je perd ma référence de mon premier fichier, suis je plus clair ?

Discussions similaires

  1. Réponses: 8
    Dernier message: 11/07/2006, 17h27
  2. [VB6] faire référence à un objet situé sur un autre form
    Par coyott dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 15/05/2006, 15h13
  3. Référence à un objet existant depuis une classe
    Par Adrenalys dans le forum ASP
    Réponses: 2
    Dernier message: 21/07/2005, 00h44

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