App to enter repetitive text in fields and combine into larger document


I’m trying to help a client solve a manual text editing problem.

They have a long contract document in Microsoft Word that needs to be filled out for new clients. Many aspects of the contract are the same, but certain sections will change for each new client. Right now they have a parent document with highlighted text that needs to be evaluated for each new client.

They are hoping for a way to automate entering new client information into many parts of the document without having to do a find/replace manually. Examples of language that needs to be replaced throughout the document would be things like client name, contract dates, etc.

Since I’m not going to be completing these changes myself, they were hoping for some kind of user-friendly software that could present fields that correspond to different areas of the document, to create a finished Word document that could be reviewed and continue to be edited if needed.

They were originally thinking a web form that would ask for fields that would correspond to areas of the document, but the scale doesn’t make sense to manually code this, and besides that, there are no developers on their team to code this!

Right now, I’m just thinking an updated parent document with unique key words for easily using find/replace. Then a matching “key” document listing each term, so they could do a find/replace using Word.

Any suggestions are appreciated!


Hopefully this’ll give you some options to consider.

1. Use Word’s Document Properties

Word documents can have custom meta-data assigned to them and these can be surfaced in the document.

Take a look at this previous discussion.

2. VBA

Visual Basic for Applications can be used to drive structural and content changes within a document template. It’s very much a sledgehammer to crack a walnut to have to build it for each document template, but if you only have a few, then it can be viable.

I work with an SAP system where, when I’m implementing for a client, I have to use a couple of configuration document templates that essentially build themselves by using an initial run of a VBA script. The approach taken by SAP (or more accurately a two levels of predecessor in terms of company acquisition) is to use the macro to eliminate content in the template. So all variations are in there at the start and through a number of automated removals and text string substitutions it produces a final(-ish) document.

3. Text Expansion

Many text expansion tools can generate content. On Windows, you could make use of TextExpander or AutoHotKey for example, for generating content. You could use fill-in forms or conditional logic and a base template styled for the organisation and off you go.

It is quite similar in many respects to the previous option. But it is probably easier to write, and less easy to do some of the low level manipulations that using VBA could do.

4. Script + Markdown + Pandoc

Take a scripting language of your choice (Python, PowerShell, etc.) Now use some well named Markdown files in a library of content you might want to use. Run the script to guide the user through content selection which combines the Markdown files and then runs the resulting Markdown file through Pandoc (set-up with an appropriate Word template), to produce the desired Word document.

5. Buy Some Document Generation Software

There is software available that will allow you to create documents based on a variety of inputs. These are typically enterprise level software solutions., so just ensure you calculate the ROI correctly if you need to put in a business case for one of those solutions.

A good starting point for comparing the options is the Capterra listing for document generation software.