Category
Microsoft Office 2010
Level
Expert
CategoryMicrosoft Office 2010 LevelExpert |
![]() Smart data entrySmart data entry in your Word 2010 document template SummaryMany templates require user input to be added in a specific location. Enter CustomXML and ContentControls in Word. This tutorial will teach you how to add your own data in a word template, and offer user friendly input to your users using a Document Information Panel. GoalIn this tutorial the reader will learn advanced techniques to manipulate the contents in a Word document in order to enable end users to easily enter data without the use of any macros.
Because there is no Graphical User Interface present in Word 2007/2010 there will be some VBA-programming involved.
AudienceOffice Developers who distribute Word 2010 templates to groups of end-users Prerequisites
Required knowledge
Required tools
Tutorial lessonsThis tutorial exists of a number of lessons which must be followed in order to reach the desired effect. Please review each step by clicking on the title 0 - OverviewBefore entering all the separate lessons I will try to give an overview. Now you have a global picture of the steps we will take to create a working template. The next steps will provide detailed information about these steps. 1 - Create an empty templateWe will create a simple Word 2010 template file, that will be expanded with all the features. We now have a simple template containing a header, some text and a footer. 2 - Add Content Controls to Word documentIn this step we will replace some text that the user should enter by so called 'Content Controls'. We now have a document containing content controls that can be used to enter data. We applied some properties for our new content controls so they can be easily used by users. 3 - Design XML fileAfter setting up the content controls we will look at all the unique pieces of information in the content controls. Each unique information part needs a separate XML element to hold that information.
Later we will add this XML file to our Word document. We now have an XML file that can contain all unique pieces of information. 4 - Add XML to WordIn this step we will add the XML file from your harddisk to the Word document/template. Now we have the means to create and update your CustomXMLPart in the Word document. If you need to make changes to the CustomXMLPart you will make these changes to your local XML file and replace it in Word using your macros. 5 - Link Content Controls to Custom XMLIn this step we will link the content controls to elements in de CustomXMLPart. This is in fact an optional step: the Content Control doesn't require storage in a CustomXMLPart; it's fine working on its own.
The power of linking a content control are described in this lesson. We now have linked all the content controls to a storage location in the CustomXMLPart. We did this by calling the SetMapping method passing an XPath expression. To find a Content Control in the Word document we used the function SelectContentControlsByTag to find a Content Control by the value of the TAG attribute. It's not always necessary to link a Content Control to customXMLPart. I briefly discussed some reason when you should consider linking. 6 - Smarter linking Content ControlsIn this lesson we will look at how to create a smarter method for linking Content Controls to the right CustomXMLPart. This is done by adding an attribute in the XML file that indicates the value of the tag-attribute belonging to the Content Control We now have a generic macro we could move to a Word Add-in because it operates independent of the Word document/template. 7 - Placeholder textIf there is no text in a Content Control, the placeholder text is displayed in light gray. It is possible to replace this standard text (from Microsoft Word) with your own text. You now have a macro and XML file that will enable you to assign a custom placeholder text. 8 - ProtectionIn this lesson we will have a look at securing the content controls. This is not a very sophisticated way of securing things: everybody can easily remove the security. So, securing thing is a way to prevent users from accidentally removing controls or their contents. Now we have a template that can be deployed to users, without running the risc of users breaking it. 9 - Create Document Information PanelIn this lesson we will take the user experience once step further: creating a so called Document Information Panel (DIP). This is a panel that is shown when a document is opened and can be styled using images, tables, colors etc.
Only downside is that this DIP cannot be integrated in the Word document structure, and must be on a shared location all users can access. We now have an even better way to let users input information. A nice panel with some extra checks, so users shouldn't even have to look for all the content controls. 10 - Create a Word Add-inWe now have a template with macros that will only work for this template. Wouldn't it be great to have these macros available all the time? Now you have a set of macros available when starting word. Tags |