View Single Post
  #4   Report Post  
Posted to microsoft.public.word.docmanagement
AmandaH AmandaH is offline
external usenet poster
 
Posts: 54
Default forms, formatting, etc

Ok so I fixed some of the code below, you can do it all in one sub.

So when you right click on the check box you will see the properties
option. In that dialog box you will see the title "Run Marco on".
Select "Exit:" drop down box and find your Marco in this case Macro7,
then click OK, it should work fine.

Then for all Check boxes that you want to use this code for you need to
add a separate bookmark to the text and revise the code. So in the end
you are going to have 6 (I think) different Marcos. Or 1 Marco for 1
Check box. I know it is a little redundant, But hey its VBA not Java.
lol


nat_h45 wrote:
Thanks very much for that.

Unfortunately I'm a total beginner at this. The code I've got input into
Visual Basic is:

Sub Strikethrough()
'
' Strikethrough Macro
' Macro recorded 7/19/2006 by planap
'
ActiveDocument.Unprotect Password:="1964"

If ActiveDocument.FormFields("Check1").CheckBox.value = false Then
ActiveDocument.Bookmarks("Text13").Select
Selection.Font.Strikethrough = True
Elseif ActiveDocument.FormFields("Check1").CheckBox.value = true
ActiveDocument.Bookmarks("Text13").Select
Selection.Font.Strikethrough = False
End If

ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True, _
Password:="1964"
End Sub


Do I add the macro on exit only? To the checkbox field or the text13 field?

Many thanks



"AmandaH" wrote:

So what you need is a Marco the first unprotect the documents, changes
the font to strike out and then re-protects it, and then assigns this
Marco to the OnExit on the check box properties.

Step 1: Unprotect the document:
ActiveDocument.Unprotect Password: ="place password here"

Step 2: Selecting the front to change
- I would make the text you want changed into a bookmark, it makes life
a lot easer

Sub Macro7()
If ActiveDocument.FormFields("Check1").CheckBox = True Then
ActiveDocument.Bookmarks("Bookmarkhere").Select
Selection.Font.StrikeThrough = True
Else
ActiveDocument.Bookmarks("Bookmarkhere").Select
Selection.Font.StrikeThrough = False
End If
End Sub

The above code basically checks to see if the check box is checked if
it is then it selects the bookmark and changes the font to
StrikeThrough as true. If the user uncheck the box it will return to
normal.

Step 3: Re-protecting the document

ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True, _
Password: ="password"

This way the user will never know that the doc was unprotected.

If you have any other question just let me know

~Amanda~