Question Comment incorporer des calculs dans MS Word


Le type de document que j'ai en tête est une offre ou un contrat. Il a de nombreuses valeurs, telles que les prix et les dates, dispersées dans le texte. Pendant des années, j'ai utilisé les champs DOCPROPERTY pour éviter de les copier-coller, où ils sont identiques (par exemple, le prix final peut être 10 ou 20 fois dans un document). Mais je pense que cela pourrait aller encore plus loin, car ce serait plus facile si certaines valeurs pouvaient être calculées à partir d’autres.

Par exemple, en utilisant la syntaxe de champ {DOCPROPERTY "final_price"}, je peux faire référence à cette propriété telle que définie dans les propriétés du document.

De plus, la syntaxe de champ {= 100 * 1.07} donnera 107.

Cependant, si j'essaie ceci: {= {DOCPROPERTY "final_price"} * 1.07}, dans diverses configurations d’accolades et de crochets, tout ce que j’ai à faire est des erreurs de syntaxe.

La documentation est rare. Quelqu'un peut-il aider?


4
2017-08-26 20:46


origine


Quelle version de Microsoft Word? - Gnoupi
De MS Office pour Mac 2008, mais jusqu'à présent, tout ce qui concerne les champs dans Word que j'ai essayé fonctionne (ou ne fonctionne pas) à la fois sur Mac et Windows. - ttarchala


Réponses:


Assurez-vous de créer des codes de champ appropriés, l'un dans l'autre, comme ceci:

  1. presse CTRL + F9
  2. Mettre en =*1.07 entre les accolades
  3. Cliquez entre = et *
  4. presse CTRL + F9 encore
  5. Mettre en DOCPROPERTY "final_price" entre les accolades
  6. presse Alt + F9 pour basculer les codes de champ
  7. presse F9 mettre à jour le champ

2
2017-08-26 23:06



Je suis désolé, mais je ne peux pas le faire fonctionner. Quoi qu'il en soit, je colle votre solution ou tente de créer le champ à nouveau, ce qui me donne une erreur de syntaxe à la fois dans Word 2008 pour Mac et dans Word 2007 pour Windows. Seriez-vous prêt à m'envoyer un fichier .doc avec ces champs fonctionnant? - ttarchala
Est-ce que vous créez les champs correctement? J'ai ajouté les étapes correctes à ma réponse. - subman
Votre solution telle que donnée ne fonctionnait toujours pas, apparemment, cela pose un problème avec PRODUCT car même la mise en {= PRODUCT (2,2)} produit une erreur de syntaxe. Cependant, je peux voir où était mon erreur. Je n'ai pas pensé que TOUTES les accolades dans les champs de mots doivent être insérées par l'opération "Insérer un champ", même celles qui se trouvent dans des champs existants. Donc, une fois à l'intérieur, je ne faisais que les saisir. Maintenant que je le sais, même cela fonctionne: {= {DOCPROPERTY "final_price"} * 1.07} Merci! - ttarchala
Aha! On dirait que j'ai fait la même erreur, puis résolu en jouant avec les fonctions! Mettra à jour la réponse pour clarifier la solution. - subman


Jetez un coup d'œil au Word addin sur www.wordequate.com. Il permet des calculs en direct en utilisant l'éditeur d'équations Word.


1
2017-10-10 11:17





Après quelques recherches, je suis arrivé à une autre solution. Je n'ai pas réussi à faire fonctionner DOCPROPERTY, mais ces étapes fonctionnent:

  1. mettre les valeurs numériques à la fin de votre document

  2. marque-page chacun d'eux, donnant aux signets des noms descriptifs

  3. les formules fonctionnent désormais avec les noms de signets en tant que "variables" \

  4. rendre les valeurs numériques invisibles (par exemple en définissant la couleur de la police) afin qu'elles n'apparaissent pas dans l'impression.

Je pense qu'il serait plus élégant d'utiliser DOCPROPERTY si quelqu'un peut le faire fonctionner, car laisser du texte invisible dans vos documents est maladroit ...


0
2017-08-28 08:06