Solved

Validate an MS Word form field

Posted on 2009-05-06
2
272 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

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Like many others, we try and discourage users from printing documents unnecessarily and instead send or share them electronically. However, this doesn't always work and documents are still printed. With this simple solution, if the user tries to …
When creating Microsoft Word-based forms there may be a need to have a form field repeated throughout the whole document. For instance, with a company name, you may want this information repeated automatically throughout the document rather than man…
In a previous video Micro Tutorial here at Experts Exchange (http://www.experts-exchange.com/videos/1358/How-to-get-a-free-trial-of-Office-365-with-the-Office-2016-desktop-applications.html), I explained how to get a free, one-month trial of Office …
This Experts Exchange video Micro Tutorial shows how to tell Microsoft Office that a word is NOT spelled correctly. Microsoft Office has a built-in, main dictionary that is shared by Office apps, including Excel, Outlook, PowerPoint, and Word. When …

776 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