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 :

Erreur la methode thisworkbook de l'objet application a echouée


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Avatar de tamtam64
    Homme Profil pro
    stagiaire developpement vba
    Inscrit en
    Mai 2012
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : stagiaire developpement vba
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2012
    Messages : 456
    Points : 658
    Points
    658
    Billets dans le blog
    17
    Par défaut Erreur la methode thisworkbook de l'objet application a echouée
    Bonjour,

    J'ai cette erreur tout le temps alors qu'est ce qui n'est pas bien écrit?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim xlApp as excel.application
    dim curbook as workbook : dim xlbook1 as workbook
    dim dicoDeLiens as dictionary
    Set dicoDeLiens = GetPath(ThisWorkbook.Worksheets("Lien fichiers").Range("Fichier"))
    Set curbook = xlApp.ThisWorkbook
    xlApp.Visible = False
    'Détermine les différents PnL Pour nos périmètres
    Set xlbook1 = xlApp.Workbooks.Open(dicoDeLiens("Fichiers P&L"), , True)
    If Verif(xlbook1) Then
    Call Main.PNL(xlbook1)
    Je ne sais pas pourquoi je ne peux pas definire une autre appli excel en paralele thisworkbook ce n'est pas possible?
    ps : getpath c'est une fonction perso pour recuperer les liens de diferents fichiers..
    Merci aux gens qui m'aideront
    Allez le RC LEns

  2. #2
    Membre éprouvé
    Homme Profil pro
    Programmeur analyste
    Inscrit en
    Février 2009
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur analyste
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 546
    Points : 1 116
    Points
    1 116
    Par défaut
    Bonjour,
    tu as oublier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set xlApp = CreateObject("Excel.Application")

    puis dans ton exemple Set curbook = xlApp.ThisWorkbook ne sert à rien

  3. #3
    Membre éclairé
    Avatar de tamtam64
    Homme Profil pro
    stagiaire developpement vba
    Inscrit en
    Mai 2012
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : stagiaire developpement vba
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2012
    Messages : 456
    Points : 658
    Points
    658
    Billets dans le blog
    17
    Par défaut
    Oui mais j'ai mal recopié j'ai mis dim xlApp as new excel.application c'est pareil non? pas besoin du set a prioris

    merci pour ta reponse en tt cas j'essaye de debugger , j'ai du mal a gerer les feuilles en fait
    Allez le RC LEns

  4. #4
    Membre éprouvé
    Homme Profil pro
    Programmeur analyste
    Inscrit en
    Février 2009
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur analyste
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 546
    Points : 1 116
    Points
    1 116
    Par défaut
    Enlève la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set curbook = xlApp.ThisWorkbook
    comme çela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test_2()
     
    Dim xlApp As New Excel.Application
    Dim xlbook1 As Workbook
     
    xlApp.visible = True
     
    Set xlbook1 = xlApp.Workbooks.Open("C:\ton chemin\fichier.xlsm", , True)
     
    Set xlApp = Nothing
    Set xlbook1 = Nothing
     
    End Sub
    pour le reste on ne peut pas deviner!

  5. #5
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut,encore un drame du copier/coller
    Oui mais j'ai mal recopié j'ai mis dim xlApp as new excel.application c'est pareil non?
    pas exactement ..... à lire et assimiler : Early ou Late Binding

Discussions similaires

  1. erreur d'execution 1004 methode range de l'objet global a echoue
    Par ranomanitra dans le forum VBA Access
    Réponses: 7
    Dernier message: 11/01/2013, 17h27
  2. la methode 'OnAction' de l'objet '_CommandBarButton' a echoué
    Par ckrikri dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/05/2009, 10h22
  3. La methode 'Range' de l'objet '_WoorkSheet' a echoué
    Par Kalvin_20 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/05/2008, 13h36
  4. Réponses: 4
    Dernier message: 28/11/2007, 22h08
  5. Erreur 1004, methode Paste de l'objet Range.
    Par asxasx dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 20/08/2007, 11h05

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