Piloter word depuis Excel

Le
GérardJean
Bonjour,

est-il possible depuis Excel d'ouvrir un document Word et de prendre la main
lorsque l'utilisateur lance certaines actions comme par exemple "enregistrer"
ou "quitter".
J'ai essayé la propriété "OnAction", mais Word ne trouve pas les macros

Cdt
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
MichDenis
Le #4463251
Dans le haut d'un module standard
Déclaration des variables
Public Wd As Object
Public Dc As Object
Public Wk As Workbook

Procédure définissant les variables.
Dans le reste de ton code peu importe le module tu pourras
utiliser chacun des objects pour les activer, y faire référence,
travailler avec et ce, tant et aussi longtemps que
tu n'auras pas libérer les objects par une ligne de code du type :
Set Wk = Nothing ou set Dc = nothing ou Wd = Nothing

'-------------------------------
Sub TEST()

Set Wk = ThisWorkbook
Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or false selon tes désires
Set Dc = Wd.documents.Open("c:denis.doc")

End Sub
'-------------------------------





"GérardJean"
Bonjour,

est-il possible depuis Excel d'ouvrir un document Word et de prendre la main
lorsque l'utilisateur lance certaines actions comme par exemple "enregistrer"
ou "quitter".
J'ai essayé la propriété "OnAction", mais Word ne trouve pas les macros

Cdt
GérardJean
Le #4463231
Merci pour ta réponse, mais à ce niveau je n'ai pas de problème; pour être
plus précis je voudrais par exemple après avoir chargé un document Word
depuis Excel, prendre la main lorque l'utilisateur active le bouton
Enregistrer de Word.

Pour cela, j'ai mis la propriété OnAction ="MaMacro" au niveau du contrôle
"Enregistrer" de la barre standard;

mon problème est que la macro "MaMacro" présente dans un module de
l'application Excel n'est pas trouvée par l'application Word; je ne sais pas
s'il est possible depuis une application Word de lancer une procédure Excel,
et dans l'affirmative, comment le faire.

Cdt


Dans le haut d'un module standard
Déclaration des variables
Public Wd As Object
Public Dc As Object
Public Wk As Workbook

Procédure définissant les variables.
Dans le reste de ton code peu importe le module tu pourras
utiliser chacun des objects pour les activer, y faire référence,
travailler avec et ce, tant et aussi longtemps que
tu n'auras pas libérer les objects par une ligne de code du type :
Set Wk = Nothing ou set Dc = nothing ou Wd = Nothing

'-------------------------------
Sub TEST()

Set Wk = ThisWorkbook
Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or false selon tes désires
Set Dc = Wd.documents.Open("c:denis.doc")

End Sub
'-------------------------------





"GérardJean"
Bonjour,

est-il possible depuis Excel d'ouvrir un document Word et de prendre la main
lorsque l'utilisateur lance certaines actions comme par exemple "enregistrer"
ou "quitter".
J'ai essayé la propriété "OnAction", mais Word ne trouve pas les macros

Cdt





MichDenis
Le #4463221
| je voudrais par exemple après avoir chargé un document Word
| depuis Excel, prendre la main lorque l'utilisateur active le bouton
| Enregistrer de Word.

| Pour cela, j'ai mis la propriété OnAction ="MaMacro" au niveau du contrôle
| "Enregistrer" de la barre standard;

C'est loin d'être clair pour moi ....

Tu disais vouloir tout gérer à partir de l'application Excel

Comme tu as une variable Application de Word : Wd dans le code que je t'ai présenté,
si tu veux exécuter une macro dans le fichier Word, tu peux utiliser quelque chose comme

'Ceci dans ta macro dans Excel .... (pas tester explicitement)
Dim X as String
X = "'" & dc.name & "'" & "!MaMacro"
Wd.Application.Run X

'Et tu continues les actions que ta macro doit accomplir !




"GérardJean"
Merci pour ta réponse, mais à ce niveau je n'ai pas de problème; pour être
plus précis je voudrais par exemple après avoir chargé un document Word
depuis Excel, prendre la main lorque l'utilisateur active le bouton
Enregistrer de Word.

Pour cela, j'ai mis la propriété OnAction ="MaMacro" au niveau du contrôle
"Enregistrer" de la barre standard;

mon problème est que la macro "MaMacro" présente dans un module de
l'application Excel n'est pas trouvée par l'application Word; je ne sais pas
s'il est possible depuis une application Word de lancer une procédure Excel,
et dans l'affirmative, comment le faire.

Cdt


Dans le haut d'un module standard
Déclaration des variables
Public Wd As Object
Public Dc As Object
Public Wk As Workbook

Procédure définissant les variables.
Dans le reste de ton code peu importe le module tu pourras
utiliser chacun des objects pour les activer, y faire référence,
travailler avec et ce, tant et aussi longtemps que
tu n'auras pas libérer les objects par une ligne de code du type :
Set Wk = Nothing ou set Dc = nothing ou Wd = Nothing

'-------------------------------
Sub TEST()

Set Wk = ThisWorkbook
Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or false selon tes désires
Set Dc = Wd.documents.Open("c:denis.doc")

End Sub
'-------------------------------





"GérardJean"
Bonjour,

est-il possible depuis Excel d'ouvrir un document Word et de prendre la main
lorsque l'utilisateur lance certaines actions comme par exemple "enregistrer"
ou "quitter".
J'ai essayé la propriété "OnAction", mais Word ne trouve pas les macros

Cdt





Publicité
Poster une réponse
Anonyme