Solved

Validate an MS Word form field

Posted on 2009-05-06
2
251 Views
Last Modified: 2012-05-06
I have an exit macro on a Word form field to undertake a validation of the input. In the event of an error I use the .select to set the focus back to the field, however, this does not work as it seems to execute the tab key press subsequent to the function return and takes it onto the next field.

How do I ignore the key event to get the focus back onto the field that has the error?
0
Comment
Question by:DavidAreen
2 Comments
 
LVL 17

Accepted Solution

by:
wobbled earned 500 total points
ID: 24313759
Hi,

This happens because the Tab event kicks in after the code has run.  What you need to do is create a global variable to store the error in.

Below is the code to do this.

I have created ExitFieldCode as a sample of how to do this.  I have called my checkbox in this example "thisone"

You then need to put in the following field the code for FieldEntry as code that runs on entering the field.  This will check to see if there is a global variable of an error set and if so it will select that field

Hope this helps
Option Explicit
 

Public gblErr As Boolean

Public gstrField As String
 

Sub ExitFieldCode()
 

    gblErr = False

    gstrField = ""
 

    If ActiveDocument.FormFields("thisone").CheckBox.Value = False Then

        MsgBox "You have not checked this etc"

        gblErr = True

        gstrField = "thisone"

        'other stuff here

    Else

        'stuff here

    End If
 
 

End Sub
 

Sub FieldEntry()
 

    If gblErr = True Then

        ActiveDocument.FormFields(gstrField).Select

    End If
 

End Sub

Open in new window

0
 
LVL 1

Author Closing Comment

by:DavidAreen
ID: 31578414
Works perfectly, thanks.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

It is often necessary in this forum and others to illustrate Word fields as text with the field delimiters replaced with the curly brackets that the delimiters resemble when field codes are being displayed on the document. This means that the text c…
Using Word 2013, I was experiencing some incredible lag when typing.  Here's what worked for me....
This video walks the viewer through the process of creating envelopes and labels, with multiple names and addresses. Navigate to the “Start Mail Merge” button in the Mailings tab: Follow the step-by-step process until asked to find the address doc…
This video shows where to find the word count, how to display it, and what it breaks down to in Microsoft Word.

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now