Automatiser une facture sous Word

Pierrax - 21 mai 2019 à 22:57
 Pierrax - 22 mai 2019 à 11:20
Bonjour,

J'ai une petite demande un peu complexe, je fais des factures de la même façon depuis maintenant 4 ans et j'en ai un peu marre de tout faire manuellement. J'aimerais automatiser le remplissage de mes factures. On m'a dit que c'était possible et que je devais demander de l'aide sur internet :p

WORD 2016

Voici donc ma facture : https://www.dropbox.com/s/tpvfb1u72btrgl8/A%20modif.docx?dl=0
Je la trouve belle comme elle est, elle comporte donc 2 Choses a automatiser:
- Le total
- numéro de facture

Pour le total: J'aimerais simplement que la colonne de droite fasse une addition pour la reporter au total en bas/

Pour le numéro: Il y'a le numéro de facture a droite et a gauche en vertical. Mais cela correspond également a la date de facturation. J'aimerais que peu importe ou je rentre ce numero, ou alors a un endroit bien défini, ça modifie tout en même temps au même numéro. Je sais pas si je suis bien clair, le but étant de gagner du temps j'en faisais une dizaine par ans y'a 4 ans mais mon business ayant évolué j'en fais plus de 100 par ans. Je voudrais juste rester sur word car j'aime comment c'est foutu et mes clients ont l'habitude de ces factures/devis.

J'ai essayé avec des tutos pendant tellement longtemps sans réussir, j'ai abandonné je m'arrache les cheveux alors je viens demander de l'aide ailleurs :)

Je vous en serait extrêmement reconnaissant si vous pouviez m'aider. merci :)

Pierre-Axel

Configuration: Windows / Vivaldi 2.5.1525.43
A voir également:

2 réponses

m@rina Messages postés 22600 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 15 mai 2025 11 432
22 mai 2019 à 02:18
Bonjour,

Bon, déjà ta facture est très belle !!! :)) On va la garder....

Tout d'abord, le mieux est quand même de faire un modèle, c'est-à-dire de l'enregistrer au format DOTM (avec macro) et de la ranger dans tes modèles.

Evidemment le tableau du modèle ne contiendra que des lignes vides. Il faut juste mettre le minimum, des lignes s'ajoutent très vite.
Pour le total, il faut simplement ajouter une formule =SUM(ABOVE)
Attention, il s'agit d'un champ et les champs ne se mettent pas tout seuls à jour, il faudra donc sélectionner et appuyer sur F9.
Si tu ne sais pas faire, regarde ici :
https://faqword.com/index.php/word/champs/894-le-mystere-des-champs?start=12

Pour la date, il faut une macro.
Tu vas commencer par renommer la zone de texte qui est à gauche où il y a le numéro de la facture. Renomme-la zdt (plus simple).
Ensuite, tu vas ajouter une balise à ton contrôle de date. Tu nommes la balise "madate".

Ensuite tu vas dans l'éditeur VBA, dans ThisDocument et tu colles la macro suivante :

Private Sub Document_ContentControlOnExit(ByVal CC As ContentControl, Cancel As Boolean)
If CC.Tag = "madate" Then
numéro = Format(CC.Range.Text, "yyyyMMdd")

ladate = CC.Range.Text
numéro = Format(ladate, "yyyyMMdd")
End If
ActiveDocument.Tables(2).Rows(2).Cells(3).Range = numéro
ActiveDocument.Shapes.Range(Array("zdt")).Select
Selection.Words(2).Select
Selection.TypeText Text:=numéro

End Sub


Cette macro se déclenchera à la sortie du contrôle, c'est à dire que lorsque tu auras changé la date, tu cliqueras n'importe où ailleurs pour sortir du contrôle et déclencher la macro.

Si tu ne sais pas faire, regarde ici :
https://faqword.com/index.php/word/formulaires-controles/902-a-l-instar-des-champs-de-formulaire-peut-on-declencher-une-macro-a-la-sortie-d-un-controle-de-contenu

et ici
https://faqword.com/index.php/word/formulaires-controles/925-comment-dans-une-macro-faire-reference-a-un-controle-de-contenu

m@rina




0
Bonjour,
Merci de votre réponse,

J'ai beau essayer et bien lire les articles rien ne marche, j'ai essayé pendant 2h ce matin je n'y arrive pas c'est un cauchemard.... la forume sumabove est bien rentrée mais si je change les montants rien ne se passe.

Je ne sais pas comment ajouter une balise non plus, mes recherches sur google me donnent des solutions qui n'existent pas dans word, je suis bloqué comme d'habitude...
0