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 :

controle de Word depuis Excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    544
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 544
    Par défaut controle de Word depuis Excel
    Bonsoir,
    Avec mon code, je transfère du texte d'XL dans un document Word et j'arrive à sauvegarder le document ainsi créé (SaveAs), j'arrive à l'imprimer (PrintOut), à le fermer (Close) mais pas moyen de l'afficher au premier plan (ni Visible=True, ni Show). Est-ce faisable ? Comment ?
    Merci d'avance
    Pierre

  2. #2
    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
    Un code qui te permet d'aller dans le doc word et de revenir dans Excel. Mais tu ne dois effectuer aucune opération de fermeture dans le code Excel après activation de Word et fermeture de Word depuis Word
    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
    Sub OuvrirEtActiverWord()
    Dim wdApp As Word.Application
    Dim WdDoc As Document
        Chemin = "D:\Doc\"
        NomFich = "Alinea.doc"
        Set wdApp = CreateObject("word.application")    'ouvre une session Word
        Set WdDoc = wdApp.Documents.Open(Filename:=Chemin & NomFich)
        DoEvents
        wdApp.Visible = True
        wdApp.Activate
        'DoEvents
        'WdDoc.Close False
        'wdApp.Quit
        Set wdApp = Nothing
        Set WdDoc = Nothing
    End Sub
    Il existe une manière de procéder avec shell qui permet de passer dans Word depuis Excel et de poursuivre la macro dans Excel une fois Word fermé. Mais ce code ne crée pas de liaison entre Word et Excel et ouvre simplement Word et le doc.
    Si ta macro doit se poursuivre après avoir modifié le document Word, c'est ce que je te conseille. Le msgbox est là pour arrêter la macro. Depuis un userform, pas besoin de msgbox.
    Rien n'empêche d'établir une liaison avec le doc modifié ensuite. Ex :
    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
    Sub WordOuvrirEtRester()
    Dim wdApp As Word.Application
    Dim WdDoc As Document
    Dim WdLType As Document, r
    r = Shell("cmd /c WinWord.exe d:\doc\Alinea.doc")
    MsgBox "Travail fini dans Word"
        Chemin = "D:\Doc\"
        NomFich = "Alinea.doc"
        Set wdApp = CreateObject("word.application")    'ouvre une session Word
        Set WdDoc = wdApp.Documents.Open(Filename:=Chemin & NomFich)
        DoEvents
        '**************
        'Ton code éventuel pour lire ou écrire dans le doc
        '**************
        WdDoc.Close False
        DoEvents
        wdApp.Quit
        Set wdApp = Nothing
        Set WdDoc = Nothing
    End Sub
    A toutes fins utiles

  3. #3
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    544
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 544
    Par défaut controler word depuis excel
    Bonjour,
    Merci ouskel'n'or, voilà un joli cadeau. Je tâche d'adapter ça à mon truc puis je cherche le bouton Résolu.
    A+
    Pierre

  4. #4
    Membre éclairé Avatar de touche_a_tout
    Profil pro
    Inscrit en
    Août 2006
    Messages
    544
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 544
    Par défaut controler Word depuis XL
    Bonjour,
    J'ai ajouté simplement à mon code (pompé chez Walkenbach) 3 lignes extraites du code donné par Ouskel'n'or (merci):
    Un code qui te permet d'aller dans le doc word et de revenir dans Excel.

    Sub OuvrirEtActiverWord()
    ...
    DoEvents
    wdApp.Visible = True
    wdApp.Activate
    et le tour est joué. Donc "Résolu".
    Encore merci
    Pierre

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

Discussions similaires

  1. Controler Word depuis Excel
    Par ANOVA dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/02/2011, 17h00
  2. Réponses: 2
    Dernier message: 15/06/2007, 10h55
  3. Question sur accès fichier word depuis excel (VBA)
    Par jerome.grange dans le forum VBA Word
    Réponses: 6
    Dernier message: 22/09/2006, 17h34
  4. coller une plage dans word depuis excel
    Par tarmin dans le forum VBA Word
    Réponses: 7
    Dernier message: 18/01/2006, 10h16
  5. Ouverture d'un template Word depuis Excel
    Par modus vivendi dans le forum VBA Word
    Réponses: 1
    Dernier message: 14/08/2005, 10h29

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