j'ai crée un modèle de document dans word, et je souhaiterai que à chaque
fois que je crée un nouveau document, un champ de mon document indique un
chiffre, qui corresponde le Xème document créé avec cette template.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Anacoluthe
Bonjour !
'Soupull' nous a écrit ...
j'ai crée un modèle de document dans word, et je souhaiterai que à chaque fois que je crée un nouveau document, un champ de mon document indique un chiffre, qui corresponde le Xème document créé avec cette template. Quelqu'un aurait une solution ?
Oui ce problème a été souvent évoqué ici et nous avons plusieurs solutions mais toutes utilisent une macro.
Le principe : conserver un numéro dans le modèle, on utilise le plus souvent une insertion automatique laquelle figurera dans le document sous la forme d'un champ { AUTOTEXT numéro } . A chaque création de document une macro automatique AutoNew se charge d'incrémenter le numéro :
Private Sub Document_New() num = ActiveDocument.AttachedTemplate.AutoTextEntries("numéro").Value num = num + 1 ActiveDocument.AttachedTemplate.AutoTextEntries("numéro").Value = num ActiveDocument.AttachedTemplate.Save ActiveDocument.Fields.Update ActiveDocument.Fields.Unlink End Sub
La dernière instruction 'déchampe' les champs pour éviter que le numéro soit modifié quand on ouvre plus tard le document.
D'autres solutions, toujours basées sur des macros de création, vont modifier une DocProperty du document : {DOCPROPERTY NumFacture } L'avantage est que la doc-propriété personnalisée est visible dans les propriétés. On peut même utiliser une propriété inutilisée comme {DOCPROPERTY Référence }
Anacoluthe « Un ami, c'est quelqu'un sur qui vous pouvez compter pour compter sur vous. » - Jean PAULHAN
Bonjour !
'Soupull' nous a écrit ...
j'ai crée un modèle de document dans word, et je souhaiterai que à chaque
fois que je crée un nouveau document, un champ de mon document indique un
chiffre, qui corresponde le Xème document créé avec cette template.
Quelqu'un aurait une solution ?
Oui ce problème a été souvent évoqué ici et nous avons plusieurs
solutions mais toutes utilisent une macro.
Le principe : conserver un numéro dans le modèle, on utilise le
plus souvent une insertion automatique laquelle figurera dans
le document sous la forme d'un champ { AUTOTEXT numéro } .
A chaque création de document une macro automatique AutoNew
se charge d'incrémenter le numéro :
Private Sub Document_New()
num = ActiveDocument.AttachedTemplate.AutoTextEntries("numéro").Value
num = num + 1
ActiveDocument.AttachedTemplate.AutoTextEntries("numéro").Value = num
ActiveDocument.AttachedTemplate.Save
ActiveDocument.Fields.Update
ActiveDocument.Fields.Unlink
End Sub
La dernière instruction 'déchampe' les champs pour éviter que
le numéro soit modifié quand on ouvre plus tard le document.
D'autres solutions, toujours basées sur des macros de création,
vont modifier une DocProperty du document :
{DOCPROPERTY NumFacture }
L'avantage est que la doc-propriété personnalisée est visible
dans les propriétés. On peut même utiliser une propriété
inutilisée comme {DOCPROPERTY Référence }
Anacoluthe
« Un ami, c'est quelqu'un sur qui vous pouvez compter
pour compter sur vous. »
- Jean PAULHAN
j'ai crée un modèle de document dans word, et je souhaiterai que à chaque fois que je crée un nouveau document, un champ de mon document indique un chiffre, qui corresponde le Xème document créé avec cette template. Quelqu'un aurait une solution ?
Oui ce problème a été souvent évoqué ici et nous avons plusieurs solutions mais toutes utilisent une macro.
Le principe : conserver un numéro dans le modèle, on utilise le plus souvent une insertion automatique laquelle figurera dans le document sous la forme d'un champ { AUTOTEXT numéro } . A chaque création de document une macro automatique AutoNew se charge d'incrémenter le numéro :
Private Sub Document_New() num = ActiveDocument.AttachedTemplate.AutoTextEntries("numéro").Value num = num + 1 ActiveDocument.AttachedTemplate.AutoTextEntries("numéro").Value = num ActiveDocument.AttachedTemplate.Save ActiveDocument.Fields.Update ActiveDocument.Fields.Unlink End Sub
La dernière instruction 'déchampe' les champs pour éviter que le numéro soit modifié quand on ouvre plus tard le document.
D'autres solutions, toujours basées sur des macros de création, vont modifier une DocProperty du document : {DOCPROPERTY NumFacture } L'avantage est que la doc-propriété personnalisée est visible dans les propriétés. On peut même utiliser une propriété inutilisée comme {DOCPROPERTY Référence }
Anacoluthe « Un ami, c'est quelqu'un sur qui vous pouvez compter pour compter sur vous. » - Jean PAULHAN