Incorporer un modèle word à un document existant
Résolu
Juan
-
Juan -
Juan -
Bonjour,
Pour un projet je souhaiterai incorporer un modèle word dans un document. Je ne sais pas si cela est possible.
Je m'explique :
J'ai un utilitaire que j'ai fait sur word qui embarque du vba.
Mon utilitaire doit créer un nouveau document quand je clique sur un bouton (que j'ai fait avec un controle activeX) sur la base d'un modèle stocké dans mon pc.
Le code :
Private Sub CommandButton1_Click()
Dim My_Contrat As Document
Set My_Contrat = Application.Documents.Add(Template:="Doc_to_scan.dotx")
End Sub
J'aimerai pouvoir envoyer mon utilitaire à un tiers et que celui-ci fonctionne toujours. Pour ce faire il faut que le code VBA soit toujours capable de trouver le modèle de document en question. Une solution qui serait très pratique serait de pouvoir incorporer le modèle dans le document.
Pouvez-vous m'aider ?
En vous remerciant !
Pour un projet je souhaiterai incorporer un modèle word dans un document. Je ne sais pas si cela est possible.
Je m'explique :
J'ai un utilitaire que j'ai fait sur word qui embarque du vba.
Mon utilitaire doit créer un nouveau document quand je clique sur un bouton (que j'ai fait avec un controle activeX) sur la base d'un modèle stocké dans mon pc.
Le code :
Private Sub CommandButton1_Click()
Dim My_Contrat As Document
Set My_Contrat = Application.Documents.Add(Template:="Doc_to_scan.dotx")
End Sub
J'aimerai pouvoir envoyer mon utilitaire à un tiers et que celui-ci fonctionne toujours. Pour ce faire il faut que le code VBA soit toujours capable de trouver le modèle de document en question. Une solution qui serait très pratique serait de pouvoir incorporer le modèle dans le document.
Pouvez-vous m'aider ?
En vous remerciant !
A voir également:
- Incorporer un modèle word à un document existant
- Modèle organigramme word - Guide
- Word 2013 - Télécharger - Traitement de texte
- Modèle de style word - Guide
- Signer un document word - Guide
- Comment reduire la taille d'un document - Guide
4 réponses
Bonjour,
Ce n'est pas vraiment prévu dans Word.
Cela étant, il y a une solution qui peut te convenir... pas sûr, mais bon...
Un document incorporé dans un autre sera obligatoirement visible d'une manière ou d'une autre. Ce que tu peux faire : tu ouvres le modèle, tu copies tout son contenu. S'il est vide, ce serait peut être bien d'y mettre quand même un titre par exemple, mais c'est pas obligatoire, le retour paragraphe seul peut suffire.
Dans le document utilitaire, tu fais un collage spécial (onglet Fichier => Coller, collage spécial) et tu choisis "Microsoft Word Document Objet". Tu coches "Afficher sous forme d'icône". Éventuellement tu changes l'icône et surtout tu mets la légende qui convient.
L'utilisateur, pour créer son document basé sur ce modèle, va devoir double cliquer sur cette icône. Cela va ouvrir le document (qui est donc basé sur ton modèle). Si le modèle est correctement fait, il ne devrait pas y avoir de problèmes de mise en page ni de mise en forme.
Lorsque l'utilisateur va fermer ce document, ce dernier sera automatiquement enregistré dans ton document utilitaire.
Il peut aussi faire un enregistrement sous afin d'obtenir un document indépendant.
Côté macro, tu peux peut être en prévoir une dans le document modèle si tu as besoin du document indépendant, afin de faire un enregistrer sous.
m@rina
Ce n'est pas vraiment prévu dans Word.
Cela étant, il y a une solution qui peut te convenir... pas sûr, mais bon...
Un document incorporé dans un autre sera obligatoirement visible d'une manière ou d'une autre. Ce que tu peux faire : tu ouvres le modèle, tu copies tout son contenu. S'il est vide, ce serait peut être bien d'y mettre quand même un titre par exemple, mais c'est pas obligatoire, le retour paragraphe seul peut suffire.
Dans le document utilitaire, tu fais un collage spécial (onglet Fichier => Coller, collage spécial) et tu choisis "Microsoft Word Document Objet". Tu coches "Afficher sous forme d'icône". Éventuellement tu changes l'icône et surtout tu mets la légende qui convient.
L'utilisateur, pour créer son document basé sur ce modèle, va devoir double cliquer sur cette icône. Cela va ouvrir le document (qui est donc basé sur ton modèle). Si le modèle est correctement fait, il ne devrait pas y avoir de problèmes de mise en page ni de mise en forme.
Lorsque l'utilisateur va fermer ce document, ce dernier sera automatiquement enregistré dans ton document utilitaire.
Il peut aussi faire un enregistrement sous afin d'obtenir un document indépendant.
Côté macro, tu peux peut être en prévoir une dans le document modèle si tu as besoin du document indépendant, afin de faire un enregistrer sous.
m@rina
Bonsoir,
Quelque chose comme ça :
ça va ouvrir le premier InlineShape, en espérant qu'il a un format OLE.
S'il y a bcp d'objets et qu'il s'agit du seul document Word incorporé, il vaudrait mieux tester avant :
m@rina
Quelque chose comme ça :
ActiveDocument.InlineShapes(1).OLEFormat.Activate
ça va ouvrir le premier InlineShape, en espérant qu'il a un format OLE.
S'il y a bcp d'objets et qu'il s'agit du seul document Word incorporé, il vaudrait mieux tester avant :
Dim objet As InlineShape, obj_OLE As OLEFormat
For Each objet In ActiveDocument.InlineShapes
With objet
If .Type = wdInlineShapeEmbeddedOLEObject Then
If .OLEFormat.Application = "Microsoft Word" Then
.OLEFormat.Activate
Exit For
End If
End If
End With
m@rina
Bonjour m@rina,
Un grand merci pour cette idée qui me semble très bonne. J'ai essayé et je peux effectivement incorporer mon modèle de cette façon dans mon utilitaire.
Néanmoins je n'arrive pas à faire une macro qui ouvre ce modèle incorporé... Après quelques recherches je suis tombé sur la collection d'objet Inlineshapes qui semble contenir mon document incorporé. Mais impossible de l'ouvrir.
Aurais tu une nouvelle bonne idée ?
Un grand merci !
Un grand merci pour cette idée qui me semble très bonne. J'ai essayé et je peux effectivement incorporer mon modèle de cette façon dans mon utilitaire.
Néanmoins je n'arrive pas à faire une macro qui ouvre ce modèle incorporé... Après quelques recherches je suis tombé sur la collection d'objet Inlineshapes qui semble contenir mon document incorporé. Mais impossible de l'ouvrir.
Aurais tu une nouvelle bonne idée ?
Un grand merci !