Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Appeler un UserForm Excel à partir de Word

3 réponses
Avatar
Corto
Bonjour,

Je souhaite appeler un formulaire créé sous Excel à partir de Word, mais
je ne trouve pas comment faire
Sub xlFormulaire
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook

Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(Filename:=ActiveDocument.Path & _
Application.PathSeparator & "MonFichier.xls")
=> Jusque là tout va bien

MonUserForm.Show
=> il ne trouve pas le formulaire. Comment lui préciser que ce
formulaire est dans xlBook ?
J'ai essayé xlBook.MonUserForm et xlApp.MonUserForm, VB renvoie une
erreur 438 : Propriété ou méthode non gérée par cet objet.

J'ai essayé aussi de recopier le formulaire sur word mais là j'ai une
erreur pour définir la propriété RowSource d'un ComboBox (Les données
sont bien sûr sur Excel). Dans ce cas là, la propriété est un String qui
doit faire référence à une plage de classeur. Je me heurte donc au même
problème : Comment référencer mes objets XL à partir de Word.
J'ai soumis ce problème sur m.p.f.office mais ça semble plus sioux que
je ne pensait, alors les velus d'Excel Please help me é_è


Merci.

Corto

3 réponses

Avatar
papou
Bonjour
Tu créés une macro dans ton classeur qui ne fait qu'ouvrir le formulaire.
Ensuite tu exécutes la macro :
xlApp.Run "MacroQuiOuvreLeFormulaire"

Cordialement
Pascal

"Corto" a écrit dans le message de news:

Bonjour,

Je souhaite appeler un formulaire créé sous Excel à partir de Word, mais
je ne trouve pas comment faire
Sub xlFormulaire
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook

Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(Filename:¬tiveDocument.Path & _
Application.PathSeparator & "MonFichier.xls")
=> Jusque là tout va bien

MonUserForm.Show
=> il ne trouve pas le formulaire. Comment lui préciser que ce formulaire
est dans xlBook ?
J'ai essayé xlBook.MonUserForm et xlApp.MonUserForm, VB renvoie une erreur
438 : Propriété ou méthode non gérée par cet objet.

J'ai essayé aussi de recopier le formulaire sur word mais là j'ai une
erreur pour définir la propriété RowSource d'un ComboBox (Les données sont
bien sûr sur Excel). Dans ce cas là, la propriété est un String qui doit
faire référence à une plage de classeur. Je me heurte donc au même
problème : Comment référencer mes objets XL à partir de Word.
J'ai soumis ce problème sur m.p.f.office mais ça semble plus sioux que je
ne pensait, alors les velus d'Excel Please help me é_è


Merci.

Corto


Avatar
MichDenis
Dans le classeur où se retrouve ton formulaire,
tu crées une procédure dont le but servira à
afficher ton formulaire

Sub AfficherFormulaire()
Userform1.show
End Sub

Et dans ta macro

Dim X as string
X = "'" & xlBook.Name & "'!AfficherFormulaire"
xlApp.Run X



"Corto" a écrit dans le message de news:

Bonjour,

Je souhaite appeler un formulaire créé sous Excel à partir de Word, mais
je ne trouve pas comment faire
Sub xlFormulaire
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook

Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(Filename:¬tiveDocument.Path & _
Application.PathSeparator & "MonFichier.xls")
=> Jusque là tout va bien

MonUserForm.Show
=> il ne trouve pas le formulaire. Comment lui préciser que ce
formulaire est dans xlBook ?
J'ai essayé xlBook.MonUserForm et xlApp.MonUserForm, VB renvoie une
erreur 438 : Propriété ou méthode non gérée par cet objet.

J'ai essayé aussi de recopier le formulaire sur word mais là j'ai une
erreur pour définir la propriété RowSource d'un ComboBox (Les données
sont bien sûr sur Excel). Dans ce cas là, la propriété est un String qui
doit faire référence à une plage de classeur. Je me heurte donc au même
problème : Comment référencer mes objets XL à partir de Word.
J'ai soumis ce problème sur m.p.f.office mais ça semble plus sioux que
je ne pensait, alors les velus d'Excel Please help me é_è


Merci.

Corto
Avatar
Corto
Super ça marche !!!
Merci beaucoup à tous

Corto

Bonjour
Tu créés une macro dans ton classeur qui ne fait qu'ouvrir le formulaire.
Ensuite tu exécutes la macro :
xlApp.Run "MacroQuiOuvreLeFormulaire"

Cordialement
Pascal

"Corto" a écrit dans le message de news:

Bonjour,

Je souhaite appeler un formulaire créé sous Excel à partir de Word, mais
je ne trouve pas comment faire
Sub xlFormulaire
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook

Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(Filename:¬tiveDocument.Path & _
Application.PathSeparator & "MonFichier.xls")
=> Jusque là tout va bien

MonUserForm.Show
=> il ne trouve pas le formulaire. Comment lui préciser que ce formulaire
est dans xlBook ?
J'ai essayé xlBook.MonUserForm et xlApp.MonUserForm, VB renvoie une erreur
438 : Propriété ou méthode non gérée par cet objet.

J'ai essayé aussi de recopier le formulaire sur word mais là j'ai une
erreur pour définir la propriété RowSource d'un ComboBox (Les données sont
bien sûr sur Excel). Dans ce cas là, la propriété est un String qui doit
faire référence à une plage de classeur. Je me heurte donc au même
problème : Comment référencer mes objets XL à partir de Word.
J'ai soumis ce problème sur m.p.f.office mais ça semble plus sioux que je
ne pensait, alors les velus d'Excel Please help me é_è


Merci.

Corto