connection a un process word deja ouvert depuis un prog vba

Le
Seb
bonjour,
je voudrais depuis un programme externe a word me connecter sur le document
du processus word actif dans windows.
Peut on faire cela? comment?

Merci

seb
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Tisane
Le #1600040
Bonjour Seb,

je voudrais depuis un programme externe a word me connecter sur le
document du processus word actif dans windows.
Peut on faire cela? comment?


Il faudrait plutôt chercher du côté du "programme externe".
Tu parles d'un programme vba, il s'agit donc d'un autre logiciel du pack
Office (Excel, Access ?).

--
Tisane

Seb
Le #1600038
non en fait ce n'est pas un autre programme office, c'est un programme de
CAO dans lequel je peux programmer en VBA.
En fait je veux inserer automatiquement des champs word à l'endroit ou se
trouve le curseur dans le document word actif(le dernier ouvert sous
windows)
Donc j'aimerai me connecter a l'objet word existant deja dans windows (et
donc ne pas avoir besoin de creer une autre instance de word) et pouvoir
faire des modification dans le doc deja ouvert.

Merci pour votre aide et vos conseils

Seb



"Tisane" 46276c22$0$27394$
Bonjour Seb,

je voudrais depuis un programme externe a word me connecter sur le
document du processus word actif dans windows.
Peut on faire cela? comment?


Il faudrait plutôt chercher du côté du "programme externe".
Tu parles d'un programme vba, il s'agit donc d'un autre logiciel du pack
Office (Excel, Access ?).

--
Tisane



Geo
Le #1600037

non en fait ce n'est pas un autre programme office, c'est un programme de CAO dans
lequel je peux programmer en VBA.
En fait je veux inserer automatiquement des champs word à l'endroit ou se trouve le
curseur dans le document word actif(le dernier ouvert sous windows)
Donc j'aimerai me connecter a l'objet word existant deja dans windows (et donc ne pas
avoir besoin de creer une autre instance de word) et pouvoir faire des modification
dans le doc deja ouvert.


Il suffit de préfixer les commandes word avec le nom de l'application
Word
Appword.insertAfter ....

--
A+

Seb
Le #1600036
pour acceder a word et travailler dans des documents que j'ouvre depuis mon
appli je crée un objet word de la façon suivante

Public objWord As Object

Set objWord = CreateObject("Word.Application")

dans le cas qui m'interesse, je ne veux pas faire ceci mais utiliser
l'instance word deja ouverte dans windows. Y a t'il un moyen de recuperer
l'objet VBA correspondant a cette instance?

Merci
Seb

"Geo"

non en fait ce n'est pas un autre programme office, c'est un programme de
CAO dans lequel je peux programmer en VBA.
En fait je veux inserer automatiquement des champs word à l'endroit ou se
trouve le curseur dans le document word actif(le dernier ouvert sous
windows)
Donc j'aimerai me connecter a l'objet word existant deja dans windows (et
donc ne pas avoir besoin de creer une autre instance de word) et pouvoir
faire des modification dans le doc deja ouvert.


Il suffit de préfixer les commandes word avec le nom de l'application Word
Appword.insertAfter ....

--
A+





Seb
Le #1600035
merci pour votre aide mais je viens de trouver

au lieu de ceci pour creer une instance de word:

Public objWord As Object
Set objWord = CreateObject("Word.Application")

il suffisait d'utiliser ceci:

Public objWord As Object
Set objWord = GetObject(, "Word.Application")

Cordialement
seb
Geo
Le #1600034

pour acceder a word et travailler dans des documents que j'ouvre depuis mon appli je
crée un objet word de la façon suivante

Public objWord As Object

Set objWord = CreateObject("Word.Application")

dans le cas qui m'interesse, je ne veux pas faire ceci mais utiliser l'instance word
deja ouverte dans windows. Y a t'il un moyen de recuperer l'objet VBA correspondant a
cette instance?


Vous l'avez, c'est objWord.
Par contre il faut référencer les bibliothèques, c'est peut-être ça qui
vous manque. MSWord.OLB

--
A+

Geo
Le #1600029

merci pour votre aide mais je viens de trouver

au lieu de ceci pour creer une instance de word:

Public objWord As Object
Set objWord = CreateObject("Word.Application")

il suffisait d'utiliser ceci:

Public objWord As Object
Set objWord = GetObject(, "Word.Application")


Vi, mettons un peu d'ordre là-dedans
GetObject permet d'accéder à Word s'il est déjà ouvert

CreateObject ouvre Word.
S'il est déjà ouvert, il en ouvre un autre qu'on peut maintenir caché
mais s'en servir quand même.

Donc si votre document était déjà ouvert, c'est effectivement GetObject
qu'il faut utiliser, je n'avais pas percuté.

--
A+

Publicité
Poster une réponse
Anonyme