MS Word Macros is a method by which you can automate a word-processing task that you have to perform repeatedly. MS Word allows for two types of macros, depending on the complexity of the task: (1) keystroke macros and (2) scripted macros (Visual Basic for Applications or VBA). While VBA is a powerful scripting platform that allows for conditional logic within macros and is frequently used for building document assembly templates, it, nonetheless, lacks critical functionality for complex document assembly.

One key scripting weakness of VBA for document assembly is its lack of tri-state logic. With document assembly, any number of situations might require conditional logic to be based on not just one of two states—either true or false—but on a third state, which is null or unknown. In other words, if the condition is true, do A. If the condition is false, do B. And if the condition is unknown, do C. In real terms, tri-state logic is critical in situations where a template user may not answer a question at all. In other words, if the question is unanswered, do C.  

In contrast to VBA, HotDocs, which is a RAD (Rapid Application Development) platform, designed specifically for document automation, easily handles tri-state logic, as well as a variety of other document-automation-specific scripting tasks, such as repeating blocks of text with automated punctuation, and composing documents by aggregating and inserting sub documents. HotDocs automatically allows for the storage and reuse of answer files, creates questions for variables used in the document, allows for a template user to move backward and forward in a template interview . . . And that’s just scratching the surface of features available in HotDocs but not with Word macros.

Keystroke macros are great for many repetitive tasks. VBA is a powerful language and dramatically extends the overall functionality of Word. But together, they still don’t come close to the document-assembly-specific functionality in HotDocs.