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-Excel] Erreur automation


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 102
    Par défaut [VBA-Excel] Erreur automation
    Bonjour à tous,

    J'ai un programme VBA (à partir de BusinessObjects) qui ouvre un fichier excel, fait des traitements sur les cellules (juste de la présentation) et je le referme.
    Mon pb est lorsque je referme l'application, il m'affiche une erreur d'execution du type '1'. Erreur automation. Le serveur a généré une exception.
    Voici 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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    Sub Export_Excel()
        Dim xlFicName As String
     
        Application.Interactive = False
     
        ' Sauvegarde en XLS
        xlFicName = ThisDocument.Path + "\" + ThisDocument.Name + ".xls"
        ThisDocument.SaveAs xlFicName
     
        ' Ouverture fichier
        Set xlapp = New Excel.Application
        xlapp.Workbooks.Open xlFicName
     
        ' Formatage des restitutions
        xlapp.Sheets(1).Select
        RotationTexte 1, 6, 180
        'FormatCentreDroit 1, "B11:F11"
        GroupementVertical 1, 6
        RéduireTailleTableau 1
        ElargirColones 1, "A:AF", 5
        xlapp.Windows(1).DisplayGridlines = False
     
        ' Formatage des restitutions
        xlapp.Sheets(2).Select
        RotationTexte 2, 8, 180
        'FormatCentreDroit 1, "B11:F11"
        GroupementVertical 2, 8
        RéduireTailleTableau 2
        ElargirColones 2, "A:AF", 5
        xlapp.Windows(1).DisplayGridlines = False
     
        xlapp.ActiveWorkbook.Save
        xlapp.Visible = True
     
        xlapp.ActiveWorkbook.Close
        xlapp.Quit
        Set xlapp = Nothing
     
    End Sub
    L'erreur se trouve au niveau de la ligne : xlapp.ActiveWorkbook.Close
    Merci pour votre aide.


  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    evite d'utiliser les active...workbook ou autre..


    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
     
    dim wk as workbook
    set wk =  xlapp.Workbooks.Open xlFicName
     
    ' Remplace ensuite tes activeWorbook par wk
    '
    '
    ..
    ''  xlapp.ActiveWorkbook.Save 
    'deviens :
    wk.save 
     
    ...
     
     
    'pour finir 
    set  wk =nothing

  3. #3
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 102
    Par défaut
    cela ne fonctionne pas,
    lorsque j'execute, une erreur se produit sur "Set wk = xlapp.Workbooks.Open(xlFicName)". il me dit incompatibilité de type.
    une idée ?

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Hello,
    Tu dis "Mon pb est lorsque je referme l'application, il m'affiche une erreur d'execution du type '1'. Erreur automation."
    Ton erreur est-elle au moment de la fermeture ou de l'enregistrement ?

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    PS - Si c'est à la fermeture, ajoute un "DoEvents" entre l'enregistrement et ta ligne "...Close..."

  6. #6
    Membre confirmé
    Inscrit en
    Août 2004
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 102
    Par défaut
    bbil, j'ai le même pb avec ta solution...
    ouskel'n'or, j'ai une pb lors de la fermeture du fichier Excel.
    Quel "doevent" doisje rajouter ? je ne comprend pas bien...
    Merci

Discussions similaires

  1. [VBA-E]Erreur automation
    Par bernard38 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/04/2006, 09h22
  2. [VBA-E] Erreur automation
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 32
    Dernier message: 07/04/2006, 15h02
  3. [VBA-E]Erreur Automation en faisant du multicasting
    Par GnarlyYoyo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/04/2006, 13h29
  4. [VBA][EXCEL] Erreur génération d'un graphique
    Par PoZZyX dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 16/01/2006, 15h52
  5. [VBA][EXCEL]Erreur '1004' avec "Application.Run"
    Par Ania dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 16/01/2006, 10h50

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