diff --git a/docs/usage/fields.md b/docs/usage/fields.md index cf2d8f9587..69475cc425 100644 --- a/docs/usage/fields.md +++ b/docs/usage/fields.md @@ -8,16 +8,16 @@ There are very complicated fields like the table of contents, but in many cases Word uses field codes to identify what the result of the field should be. You can find these field codes by adding a field in a document (`Insert -> Quick Parts -> Field...`) and clicking the 'Field codes'-button. Some examples include: -Field type | Example | Description ------------ | ---------------- | --------------------------------------------------------- -= (Formula) | `=2 * 21` | Calculates the result of a formula. You can also use bookmarks as variables. -Author | `AUTHOR` | Includes the author mentioned in the document properties. -CreateDate | `CREATEDATE` | Date the document was created. -Date | `DATE` | Today's date. -FileName | `FILENAME \p` | The name of the document. Add `\p` for the complete path. -Info | `INFO NumWords` | Data from the document properties, e.g. the number of words in the document. -NumPages | `NUMPAGES` | Number of pages in the document. -UserName | `USERNAME` | Your user name from the Office personalization settings. +Field type | Example | Description +----------- | --------------- | --------------------------------------------------------- += (Formula) | `=2*21` | Calculates the result of a formula. You can also use bookmarks as variables, see below. +Author | `AUTHOR` | Includes the author mentioned in the document properties. +CreateDate | `CREATEDATE` | Date the document was created. +Date | `DATE` | Today's date. +FileName | `FILENAME \p` | The name of the document. Add `\p` for the complete path. +Info | `INFO NumWords` | Data from the document properties, e.g. the number of words in the document. +NumPages | `NUMPAGES` | Number of pages in the document. +UserName | `USERNAME` | Your user name from the Office personalization settings. Fields can be added as a child of a paragraph: @@ -35,7 +35,24 @@ const paragraph = new Paragraph({ }); ``` -## Mail merge fields +### Formulas + +One type of field is the formula that can be used to do some basic calculations. This can be done with static values, e.g. `12 + 34`, but a value from a bookmark can also be used in a calculation. This can be seen in the following example: + +```ts +const paragraph = new Paragraph({ + children: [ + new TextRun("Value one is: "), + new Bookmark({ id: "One", children: [new TextRun("451")]}), + new TextRun(". The second value is: "), + new Bookmark({ id: "Two", children: [new TextRun("886")]}), + new TextRun(". The sum of these values is: "), + new SimpleField("=One+Two"), + ], +}); +``` + +### Mail merge fields Fields are often used in a mail merge where a template document is created and data from another source (Excel or a database) is inserted in the document.