Re: Beginner question
- From: "Jim Szatkowski" <jamesski@xxxxxxxxx>
- Date: Thu, 5 Jun 2008 13:51:58 -0600
Worked! Thanks!!
Jim
"Jay Freedman" <jay.freedman@xxxxxxxxxxx> wrote in message news:7fbe44tg7d177cmeecrnjhp0neqsu887ic@xxxxxxxxxx
The error occurs on the CurrPane.Selection.GoTo, not on the With DoSearch. The
error's text is "Object variable or With block variable not set", and what it's
trying to tell you is that you declared the variable CurrPane but you never
assigned a value to it. Since that object variable doesn't have a value, you
can't use any of its members.
To verify this, run the macro by putting the cursor in the code in the VBA
editor and executing one statement at a time by pressing F8. Notice which
statement is highlighted when the error occurs.
You can make the macro work by inserting this line in place of the commented-out
ActiveDocument.ActiveWindow statement:
Set CurrPane = ActiveWindow.ActivePane
As you learn more VBA, you'll learn that it's better to use a Range object
instead of the Selection object in applications like this... but that's another
subject. :-)
--
Regards,
Jay Freedman
Microsoft Word MVP FAQ: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the newsgroup so all
may benefit.
On Wed, 4 Jun 2008 14:54:15 -0600, "Jim Szatkowski" <jamesski@xxxxxxxxx> wrote:
I'm using Word 2003 on a Vista Business box. I've tried to duplicate a
macro shown in VBA for Dummies 4th Edition to remove highlighting of text.
I'm searching for yellow highlighting and want to simply remove it. Where
have I gone wrong - I keep getting a 91 error regarding the line "With
DoSearch" at top of repeated code section.
Macro follows:===================================================
Public Sub RemoveHighlight()
'
' RemoveHighlight Macro
Dim CurrPane As Pane
' ActiveDocument.ActiveWindow.View = wdNormalView
CurrPane.Selection.GoTo wdGoToLine, wdGoToFirst
Dim DoSearch As Find
Set DoSearch = CurrPane.Selection.Find
With DoSearch
.ClearFormatting
.Highlight = True
.MatchCase = False
While DoSearch.Execute()
With CurrPane.Selection.FormattedText
If .HighlightColorIndex = wdYellow Then
.HighlightColorIndex = wdNoHighlight
End If
End With
Wend
CurrPane.Selection.GoTo wdGoToLine, wdGoToFirst
End With
End Sub
=======================================
Thanks!
Jim
James L Szatkowski, PE, NSPE
jamesski@xxxxxxxxx
http://www.jlsce.com
.
- References:
- Beginner question
- From: Jim Szatkowski
- Re: Beginner question
- From: Jay Freedman
- Beginner question
- Prev by Date: Re: Beginner question
- Next by Date: Re: Inserting footnote into automated word document from Access
- Previous by thread: Re: Beginner question
- Next by thread: RE: Beginner question
- Index(es):
Relevant Pages
|