"David Sisson" wrote:
> You could use Range instead of Selection.
>
> Dim MyDoc As Document
> Dim Rng As Range
> Dim FF As FormField
>
> Set MyDoc = ActiveDocument
>
> 'Unprotect the file
> If MyDoc.ProtectionType <> wdNoProtection Then
> bProtected = True
> MyDoc.Unprotect Password:="colleen"
> End if
>
> For Each FF In aDoc.FormFields
>
> Set Rng = FF.Range
>
> With Rng
> .CheckSpelling , True
> End With
> Next
>
> 'Reprotect the document.
> If bProtected = True Then
> ActiveDocument.Protect _
> Type:=wdAllowOnlyFormFields, NoReset:=True, Password:="colleen"
> End If
>
> '--------------
> You could specifiy the formfields.
> Set Rng = MyDoc.Formfields(1).Range 'Formfield Number 1
> With Rng
> .CheckSpelling , True
> End With
>
>
> You could rename your Formfield names on the ones you cant to check.
> Then iterate the FFs, checking only the ones that match.
>
>
> Bookmark(1).name = SCY_BM1 'Spell Check Yes Bookmark #1
> Bookmark(3).name = SCY_BM3 'Spell Check Yes Bookmark #1
> Bookmark(9).name = SCY_BM9 'Spell Check Yes Bookmark #1
>
> Then
>
> For Each FF In aDoc.FormFields
>
> If left(FF.Name), 3) = "SCY" then
> Set Rng = FF.Range
>
> With Rng
> .CheckSpelling , True
> End With
>
> Next
>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ok I tried this and I get an Compile Error that reads:
Sub or function not defined. And it highlights on the Bookmark().name =
SCY_BM1 line. Also the
If left (FF.Name , 3) = "SCY"
then
is red, what am I doing wrong? Below is the code as it reads currently.
Thanks for all your help I have been struggling with this for days now.
>
>
Sub SpellCheck()
Dim MyDoc As Document
Dim Rng As Range
Dim FF As FormField
Set MyDoc = ActiveDocument
'Unprotect the file
If MyDoc.ProtectionType <> wdNoProtection Then
bProtected = True
MyDoc.Unprotect Password:="colleen"
End If
For Each FF In aDoc.FormFields
Set Rng = FF.Range
With Rng
.CheckSpelling , True
End With
Next
'Reprotect the document.
If bProtected = True Then
ActiveDocument.Protect _
Type:=wdAllowOnlyFormFields, NoReset:=True, Password:="colleen"
End If
'--------------
'You could specifiy the formfields.
Set Rng = MyDoc.FormFields(1).Range 'Formfield Number 1
With Rng
.CheckSpelling , True
End With
Bookmark(Matter).Name = SCY_BM1 'Spell Check Yes Bookmark #1
Bookmark(Respondent).Name = SCY_BM3 'Spell Check Yes Bookmark #1
Bookmark(Summary).Name = SCY_BM9 'Spell Check Yes Bookmark #1
For Each FF In aDoc.FormFields
If left(FF.Name), 3) = "SCY"
then
Set Rng = FF.Range
With Rng
.CheckSpelling , True
End With
Next
>