WD: How to Use AutoText as a Result of a Form Field Entry

ID: Q117209

The information in this article applies to:

SUMMARY

This article describes how to use AutoText as the result of a form field. The procedure uses a drop-down form field that contains an on-exit macro.

MORE INFORMATION

In the example that follows, you will create a form that contains a form field that causes a company's address to be inserted automatically when the user enters a form field and selects a company name. The address will be placed at a bookmark located in an unprotected section of the document.

CREATING THE ON-EXIT MACRO

Create the macro appropriate for your version of Word, where "DropDown1" is the bookmark that represents the drop-down form field containing your list of items, and "Mark1" is the bookmark that represents where you want the AutoText inserted.

Microsoft provides examples of Visual Basic for Applications procedures for illustration only, without warranty either expressed or implied, including, but not limited to the implied warranties of merchantability and/or fitness for a particular purpose. The Visual Basic procedures in this article are provided 'as is' and Microsoft does not guarantee that they can be used in all situations. While Microsoft support professionals can help explain the functionality of a particular macro, they will not modify these examples to provide added functionality, nor will they help you construct macros to meet your specific needs. If you have limited programming experience, you may want to consult one of the Microsoft Solution Providers. Solution Providers offer a wide range of fee-based services, including creating custom macros. For more information about Microsoft Solution Providers, call Microsoft Customer Information Service at (800) 426-9400.

Word 98 Macintosh Edition

   Sub DropDownAutoText1()     'This is the name of the macro
      Dim DropResult As String
      ' Get result of the form field.
      DropResult = ActiveDocument.FormFields("DropDown1").Result
      ' UnProtect the document.
      ActiveDocument.UnProtect
      With Selection
         ' Go to location to insert Autotext
         .GoTo What:=wdGoToBookmark, Name:="Mark1"
         ' Insert AutoText name chosen from dropdown list.
         .InsertAfter DropResult
         ' Insert the AutoText.
         .Range.InsertAutoText
      End With
      ' Re-Protect the document.
      If ActiveDocument.ProtectionType = wdNoProtection Then
         ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True
      End If
   End Sub

WARNING: ANY USE BY YOU OF THE CODE PROVIDED IN THIS ARTICLE IS AT YOUR OWN RISK. Microsoft provides this macro code "as is" without warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.

Word 6.0 and 7.0

   Sub Main
      ' Get result of the form field.
      A$ = GetFormResult$ ("DropDown1")
      ' UnProtect the document.
      ToolsUnprotectDocument
      ' Go to location to insert Autotext
      EditGoTo .Destination = "Mark1"
      ' Insert AutoText name chosen from dropdown list.
      Insert A$
      ' Insert the AutoText.
      InsertAutoText
      ' Re-Protect the document.
      ToolsProtectDocument .NoReset = 1
   End Sub

For more information about the GetFormResult() function, see page 494 of the "Microsoft Word Developer's Kit" for version 6.0 and page 557 of the "Microsoft Word Developer's Kit, rev. 3."

CREATING THE DROP-DOWN FORM FIELD

Word 98 Macintosh Edition

Open a new document and follow these steps to create a drop-down form field:

1. On the View menu, point to Toolbars, and then click Forms.

2. On the Forms toolbar, click Drop-Down Form Field (the third

   button).

3. Double-click the newly inserted form field. Enter an item
   name in the Drop-down Item box, and choose the Add button. Use
   items (such as company names) to denote information (such as
   addresses) to be inserted into other places on the form.

4. Repeat step 3 for each item needed in the Drop-Down list. Then
   click the OK button.

5. Right-click the Drop-Down Form Field and click Properties on
   the shortcut menu.

6. From the Drop-Down Form Field Options dialog box, under "Run
   Macro On," in the Exit box, select the macro you created
   in the "Create the On-Exit Macro" section of this article.
   Click OK.

Word 6.0/7.0

Open a new document and follow these steps to create a drop-down form field:

1. On the Insert menu, click Form Field, and then select Drop-Down

   from the Type list.

2. Click the Options button. Enter an item name in the Drop-Down Item
   box, and click the Add button. Use items (such as company names) to
   denote information (such as addresses) to be inserted into other
   places on the form.

3. Repeat step 2 for each item needed in the Drop-Down list. Then click
   OK.

4. Right-click the Drop-Down Form Field, and then click Form Field Options.

5. In the Form Field Drop-Down Options dialog box, under "Run Macro On,"

   select the macro you created in the "Create the On-Exit Macro"
   section of this article. Click OK.

For more information about creating form fields, see "Forms" beginning on page 305 in the "Microsoft Word User's Guide" for version 6.0.

CREATING THE AUTOTEXT ENTRIES

Create the AutoText entries. Give each AutoText entry the same name that is used in the drop-down form field list. The content of the AutoText entry will be the company address.

For additional information on creating AutoText entries, use Word Help. To locate the appropriate Help topic use the appropriate procedure for your version of Word.

Word 98 Macintosh Edition

Follow these steps:

1. On the Help menu, click Contents and Index.

2. Click the Index tab, and then type AutoText on the Step 1

   line.

3. Under Step 2, select Creating from the AutoText topic, and
   then click Display.

Word 7.x

1. On the Help menu, click Microsoft Word Help Topics.

2. Select the Index tab, and then type "AutoText" (without the

   quotation marks).

3. Under AutoText, Select "creating entries," and then click
   Display.

4. Select the "Use shortcuts to insert frequently used text or
   graphics" topic.

Word 6.x

1. On the Help menu, click "Search for help on."

2. Click the Index tab, and then type "AutoText" (without the quotation

   marks).

3. Under AutoText, select "creating entries," and then click Display.

4. Click the "Use shortcuts to insert frequently used text or graphics"

   topic.

PLACING THE BOOKMARK IN THE FORM

Use the appropriate procedure to insert a bookmark (in this example, name the bookmark Mark1) where you want the AutoText (address) to appear. This section of the document will be unprotected so that the AutoText result can be inserted into the document. Insert a Continuous Section Break above and below this bookmark.

Word 98 Macintosh Edition

Follow these steps:

1. On the Insert menu, click Bookmark.

2. Type Mark1 on the Bookmark name line.

3. Click Add.

Word 6.x and 7.x

Follow these steps:

1. On the Edit menu, click Bookmark.

2. Type Mark1 on the Bookmark Name line.

3. Click Add.

NOTE: You will not be able to use bookmarks in headers, footers, annotations, footnotes, or endnotes because the EditGoto command in the macro will not see these bookmarks, and they cannot be unprotected in your form.

PROTECTING THE FORM

To protect the form, follow these steps:

1. On the Tools menu, click Protect document, select the Forms option, and

   click Sections.

2. In the Section Protection dialog box, clear the check box corresponding
   to the section where the AutoText will be inserted and click OK twice.

3. Save the Form.

REFERENCES

"Microsoft Word Developer's Kit," for version 6.0, pages 494 [GetFormResult() function], 681 (SetFormResult statement)

"Microsoft Word User's Guide," version 6.0, pages 305-326 ("Forms"), 743- 755 ("Recording and Running Macros")

Additional query words: forms result module auto text

Keywords          : kbgraphic kbmacro kbdta macword98 winword macword word6 winword2 word7 word95 
Version           : WINDOWS:2.0,2.0a,2.0a-CD,2.0b,2.0c,6.0,6.0a,6.0c,7.0,7.0a; MACINTOSH:6.0,6.0.1,6.0.1a
Platform          : MACINTOSH WINDOWS
Issue type        : kbhowto kbinfo

Last Reviewed: April 9, 1999