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 d'exécution 462" à la deuxième application d'une macro [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut "Erreur d'exécution 462" à la deuxième application d'une macro
    Bonjour,

    J'ai créé une macro sur Excel qui me permet de générer automatiquement deux documents Word et qui les enregistre à leur place sur le serveur. Lorsque je clique une première fois sur "générer les documents", je n'ai aucun souci et tout se passe bien : mon attestation et ma convention sont créées sur Word et enregistrées chacune à leur emplacement puis Word se ferme. Mais quand je clique une seconde fois sur le bouton "générer les documents", j'ai un message d'erreur qui apparaît : "Erreur d'exécution 462, le serveur distant n'existe pas ou n'est pas disponible".

    Voici mon code, et Excel me surligne en jaune quand je clique sur "débogage" la première partie "enregistrer sous". (désolée pour toutes les lignes inutiles, mais j'ai besoin d'espace pour me retrouver dans mes différentes parties de 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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    Sub publi_convention_attestation()
    'Nécessite d'activer la référence "Microsoft Word xx.x Object Library"
        Dim docWord As Word.Document
        Dim appWord As Word.Application
        Dim NomBase As String
        Dim convention As Variant
            Set convention = Sheets("Publipostage attestation")
        Dim nom As Variant
            nom = Sheets("Base à remplir").Range("C18").Value
        Dim module As Variant
            module = Sheets("Base à remplir").Range("C12").Value
     
        'Chemin = activeworksheets
        NomBase = "J:\Publipostages\Matrice RB.xlsm"
     
        '_______________________________________________________________________________
        
        'Ouverture Word
        Application.ScreenUpdating = False
        Set appWord = New Word.Application
        appWord.Visible = True
     
        'Ouverture Attestation Word
        Set docWord = appWord.Documents.Open("J:\Publipostages\Attestation RB - modèle.doc")
        nom = Sheets("Base à remplir").Range("C18").Value
     
        'fonctionnalité de publipostage pour le document spécifié
        With docWord.MailMerge
            'Ouvre la base de données
            .OpenDataSource Name:=NomBase, _
                SQLStatement:="SELECT * FROM [Publipostage attestation$]"
                'Spécifie la fusion
            .Destination = wdSendToNewDocument
            .SuppressBlankLines = True
     
        'Prend en compte l'ensemble des enregistrements
                With .DataSource
                    .FirstRecord = wdDefaultFirstRecord
                    .LastRecord = wdDefaultLastRecord
                End With
     
            'Exécute l'opération de publipostage
            .Execute Pause:=False
        End With
     
        'Sauvegarde le fichier sous un nom particulier'
            ActiveDocument.SaveAs Filename:= _
            "J:\ATTESTATIONS\Attestation " & module & " - " & nom & ".docx" _
            , FileFormat:=wdFormatXMLDocument, LockComments:=False, Password:="", _
            AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
            EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
            :=False, SaveAsAOCELetter:=False
            'ActiveWindow.Close
     
         Application.ScreenUpdating = True
     
         'Fermeture de Word
        docWord.Close False
        Set docWord = Nothing 'rajouté'
     
       '_______________________________________________________________________________
           
        'Ouverture Convention Word
        Set docWord = appWord.Documents.Open("J:\Publipostages\Convention RB - modèle.doc")
        nom = Sheets("Base à remplir").Range("C18").Value
     
        'fonctionnalité de publipostage pour le document spécifié
        With docWord.MailMerge
            'Ouvre la base de données
            .OpenDataSource Name:=NomBase, _
                SQLStatement:="SELECT * FROM [Publipostage Conventions$]"
                'Spécifie la fusion
            .Destination = wdSendToNewDocument
            .SuppressBlankLines = True
     
        'Prend en compte l'ensemble des enregistrements
                With .DataSource
                    .FirstRecord = wdDefaultFirstRecord
                    .LastRecord = wdDefaultLastRecord
                End With
     
            'Exécute l'opération de publipostage
            .Execute Pause:=False
        End With
     
        'Sauvegarde le fichier sous un nom particulier'
            ActiveDocument.SaveAs Filename:= _
            "J:\CONVENTIONS\Convention " & module & " - " & nom & ".docx" _
            , FileFormat:=wdFormatXMLDocument, LockComments:=False, Password:="", _
            AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
            EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
            :=False, SaveAsAOCELetter:=False
            'ActiveWindow.Close
     
         Application.ScreenUpdating = True
     
        'Fermeture du document Word
        docWord.Close False
        Set docWord = Nothing 'rajouté"
        appWord.Quit
        Set appWord = Nothing 'rajouté'
    End Sub
    Je ne vois pas du tout où je pourrais changer le code pour que ça fonctionne "à l'infini"...

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut



    Bonjour !

    Le B-A-BA est de placer un point d'arrêt sur la ligne fautive puis, après avoir lancé l'exécution,
    de vérifier enfin le contenu de ses variables dans la fenêtre des Variables Locales


    ______________________________________________________________________________________________________
    Je suis Charlie, Bardo, Sousse
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut
    Désolée, je n'ai pas la B-A-BA étant donné que je n'ai jamais pris de cours de VBA de ma vie et que cette macro est la première que je fais...
    J'ai "bricolé" comme j'ai pu à partir de codes trouvés sur le net ou via les macro "préenregistrées" que j'ai faites à l'aide de Word ou Excel.

    Donc mon code est surement très loin d'être parfait ou de suivre les "règles de base", et c'est en partie pour ça que je préfère venir demander à des gens qui s'y connaissent un peu mieux...

  4. #4
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 338
    Points : 4 295
    Points
    4 295
    Par défaut
    TU peux nous dire sur quelle ligne ça plante exactement (au niveau du code que tu as mis) ?

    Sinon, je pense que c'est plus un pb de process Word, qui ne sait plus où il en est.
    Essaye de mettre ta ligne :

    avant la ligne 64, qui te permettra de "quitter" l'application Word, puis de la rouvrir correctement.
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut
    Dans mon code actuel, l'erreur surlignée en jaune correspond aux lignes 47 à 52 inclues.

    J'avais déjà essayé de faire fermer Word avec appWord.quit, je l'ai d'ailleurs refait ici pour tester (remplacement à partir de la ligne 57) :

    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
    'Fermeture de Word
        docWord.Close False
        appWord.Quit
        Set docWord = Nothing 'rajouté'
     
       '_______________________________________________________________________________
           
         'Ouverture Word
        Application.ScreenUpdating = False
        Set appWord = New Word.Application
        appWord.Visible = True
     
        'Ouverture Convention Word
        Set docWord = appWord.Documents.Open("J:\Publipostages\Convention RB - modèle.doc")
        nom = Sheets("Base à remplir").Range("C18").Value
    Et du coup l'erreur se "déplace" sur le 2e "enregistrer sous" qui correspond aux lignes 87 à 93 de mon code dans mon message initial.

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,


    Citation Envoyé par Lexie91 Voir le message
    Dans mon code actuel, l'erreur surlignée en jaune correspond aux lignes 47 à 52 inclues.
    J'ai (déjà) eu une histoire similaire avec Office 2010.

    Si c'est comme chez-moi, ton code original avec les paramètres nommés est obligatoire quand tu as une macro dans Word pour enregistrer dans Word

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
      ActiveDocument.SaveAs Filename:= _
            "J:\ATTESTATIONS\Attestation " & module & " - " & nom & ".docx" _
            , FileFormat:=wdFormatXMLDocument, LockComments:=False, Password:="", _
            AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
            EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
            :=False, SaveAsAOCELetter:=False
            'ActiveWindow.Close
    Et toujours si c'est comme chez-moi, quand on pilote Word à partir d'une autre application, les paramètres nommés ne marchent pas, et il faut revenir à la vieille notation:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim Nom as string
    Nom= "J:\ATTESTATIONS\Attestation " & module & " - " & nom & ".docx"
    ActiveDocument.SaveAs (Nom)
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  7. #7
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut
    Je viens d'essayer en notant ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            'Sauvegarde le fichier sous un nom particulier'
            Dim NomAttestation As String
            NomAttestation = "J:\ATTESTATIONS\Attestation " & module & " - " & Nom & ".docx"
            ActiveDocument.SaveAs (NomAttestation)
    A la première utilisation, tout va bien, mais à la seconde, la ligne 4 a la même erreur qu'avec mon code initial...
    Ca va me rendre folle je crois.

  8. #8
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut




    Donc l'erreur se situe à la ligne précédente : encore une fois, vérifier le contenu des variables !
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  9. #9
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut
    J'ai repris toutes mes variables depuis le début, j'ai revérifié à quoi elles correspondaient, j'en ai renommé certaines (dont "module" qui apparaissait en bleu dans le code), j'en ai même supprimé une qui au final n'était pas utilisée... Le souci persiste (ligne 48), et je ne vois vraiment pas où vous voulez en venir Marc-L.

    Et à la ligne précédente je ne vois vraiment pas où peut être le souci : ma variable NomAttestation est bien un texte, et elle correspond bien au chemin indiqué...

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    Sub publi_convention_attestation()
    'Nécessite d'activer la référence "Microsoft Word xx.x Object Library"
     
        'Variables
        Dim docWord As Word.Document
        Dim appWord As Word.Application
        Dim NomBase As String
            NomBase = "J:\Publipostages\Matrice RB.xlsm"
        Dim NomPersonne As Variant
            NomPersonne = Sheets("Base à remplir").Range("C18").Value
        Dim ModuleSuivi As Variant
            ModuleSuivi = Sheets("Base à remplir").Range("C12").Value
        Dim NomAttestation As String
            NomAttestation = "J:\ATTESTATIONS\Attestation " & ModuleSuivi & " - " & NomPersonne & ".docx"
        Dim NomConvention As String
            NomConvention = "J:\CONVENTIONS\Convention " & ModuleSuivi  & " - " & NomPersonne & ".docx"
     
        '_______________________________________________________________________________
        
        'Ouverture Word
        Application.ScreenUpdating = False
        Set appWord = New Word.Application
        appWord.Visible = True
     
        'Ouverture Attestation Word
        Set docWord = appWord.Documents.Open("J:\Publipostages\Attestation RB - modèle.doc")
     
        'fonctionnalité de publipostage pour le document spécifié
        With docWord.MailMerge
            'Ouvre la base de données
            .OpenDataSource Name:=NomBase, _
                SQLStatement:="SELECT * FROM [Publipostage attestation$]"
                'Spécifie la fusion
            .Destination = wdSendToNewDocument
            .SuppressBlankLines = True
     
        'Prend en compte l'ensemble des enregistrements
                With .DataSource
                    .FirstRecord = wdDefaultFirstRecord
                    .LastRecord = wdDefaultLastRecord
                End With
     
            'Exécute l'opération de publipostage
            .Execute Pause:=False
        End With
     
            'Sauvegarde le fichier sous un nom particulier'
            ActiveDocument.SaveAs NomAttestation
     
         Application.ScreenUpdating = True
     
         'Fermeture de Word
        docWord.Close False
        Set docWord = Nothing 'rajouté'
     
       '_______________________________________________________________________________
           
        'Ouverture Convention Word
        Set docWord = appWord.Documents.Open("J:\Publipostages\Convention RB - modèle.doc")
     
        'fonctionnalité de publipostage pour le document spécifié
        With docWord.MailMerge
            'Ouvre la base de données
            .OpenDataSource Name:=NomBase, _
                SQLStatement:="SELECT * FROM [Publipostage Conventions$]"
                'Spécifie la fusion
            .Destination = wdSendToNewDocument
            .SuppressBlankLines = True
     
        'Prend en compte l'ensemble des enregistrements
                With .DataSource
                    .FirstRecord = wdDefaultFirstRecord
                    .LastRecord = wdDefaultLastRecord
                End With
     
            'Exécute l'opération de publipostage
            .Execute Pause:=False
        End With
     
        'Sauvegarde le fichier sous un nom particulier'
            ActiveDocument.SaveAs NomConvention
     
         Application.ScreenUpdating = True
     
        'Fermeture du document Word
        docWord.Close False
        Set docWord = Nothing 'rajouté"
        appWord.Quit
        Set appWord = Nothing 'rajouté'
    End Sub

  10. #10
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut
    Un petit up de mon sujet, je n'ai toujours pas réussi à régler ce souci d'erreur à la deuxième application de la macro...

  11. #11
    Expert éminent sénior


    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
    Points : 20 038
    Points
    20 038
    Par défaut
    Bonjour,


    Il faut éviter d'utiliser les objets ActiveCell, ActiveSheet, ActiveWorkBook ... et encore mieux ActiveDocument (c'est word et pas excel ...) , tu as une variable (docWord) pointant sur ton document word , utilise la ...

  12. #12
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut

    Lors de la seconde tentative, exécuter le code en mode pas à pas via la touche F8
    tout en contrôlant le contenu de la fenêtre des Variables locales

    Effectivement, ActiveDocument n'existe pas dans Excel ! Ne manquerait-il pas un point devant ?
    Mais mieux vaut suivre le conseil avisé de bbil …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  13. #13
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut heu
    Bonjour

    bonjour sur un serveur distant tu dis ?,

    a tu seulement essayé de faire une pause entre les 2 fois ?

    va voir cette discution
    http://www.developpez.net/forums/d82...-inaccessible/
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  14. #14
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par bbil Voir le message
    Bonjour,


    Il faut éviter d'utiliser les objets ActiveCell, ActiveSheet, ActiveWorkBook ... et encore mieux ActiveDocument (c'est word et pas excel ...) , tu as une variable (docWord) pointant sur ton document word , utilise la ...
    J'ai essayé en effet de remplacer avec la variable docWord, mais du coup il enregistre sur le serveur le document modèle pour le publipostage sous le nom que je veux, et non pas le nouveau document créé, et il termine par me demander si je veux enregistrer "lettre1", qui est donc le document qui devrait aller s'enregistrer seul sur le serveur.
    Je peux créer une variable qui renvoie au nouveau document créé par le publipostage ?



    Citation Envoyé par patricktoulon Voir le message
    Bonjour

    bonjour sur un serveur distant tu dis ?,

    a tu seulement essayé de faire une pause entre les 2 fois ?
    Mon problème reste identique, même quand je mets mes documents sur mon bureau et non plus sur le serveur. J'avais aussi déjà essayé d'attendre mais rien ne changeait.

  15. #15
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    une simple fonction d'attente a appeler apres l'apel de l'ouverture de word
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Function Wait_world()
    Dim objShell As Object  
    Do: DoEvents:Set objShell = GetObject(, "Word.Application") :Loop Until objShell Is Nothing
    End Function
    edit: integration du set dans le do
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  16. #16
    Expert éminent sénior


    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
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par Lexie91 Voir le message
    J'ai essayé en effet de remplacer avec la variable docWord, mais du coup il enregistre sur le serveur le document modèle p....
    ok, mais s'il n'y as pas d'autre solution qu'utiliser ActiveDocument, précise au moins que l'application parente est word :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      AppWrd.ActiveDocument.SaveAs......

  17. #17
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 19
    Points : 6
    Points
    6
    Par défaut
    Merci mille fois, c'était aussi bête que ça...
    Je comprends maintenant mieux le conseil de Marc-L concernant la variable, je n'ai pas du tout fait le lien avant !

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 14/04/2015, 00h38
  2. Réponses: 1
    Dernier message: 03/04/2014, 12h16
  3. [XL-2007] Erreur d'exécution 462, 1 fois sur 2
    Par a.faurie dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 04/02/2014, 11h28
  4. [XL-2007] erreur 80004005 a la sauvegarde d'un ppt par une macro
    Par loloiss dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/01/2011, 15h00
  5. [XL-2007] Exécution d'un script VBS à partir d'une macro
    Par spidey89 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/09/2010, 15h59

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