ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Need help with a macro (https://www.excelbanter.com/excel-programming/322082-need-help-macro.html)

Bill Allen[_3_]

Need help with a macro
 
Sorry if this is an inappropriate post for this area, but I'm not getting
very much of a response at the Word.vba site.

When copying text from the IDE into a Word document, I would like to have
the format match the format in the IDE, specifically changing the color of
the font of the commented lines. I have written the following which does
what I want for a particular line:

Selection.Find.ClearFormatting
With Selection.Find
.Text = "'"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = True

End With

Selection.Find.Execute

With Selection

.EndKey Unit:=wdLine, Extend:=wdExtend
.Font.Color = wdColorGreen
.MoveDown Unit:=wdLine, Count:=1
.HomeKey Unit:=wdLine

End With

As you might have guessed, this works one instance at a time. It finds the
next instance of "*", changes the entire line to green, moves one line down,
goes to the first character position in that line and stops.

What do I need to add to make this routine check the entire document?

Thanks,

Bill Allen





Debra Dalgleish

Need help with a macro
 
You could loop through the paragraphs, e.g.:

'==============================
Sub TestFormat()
Dim i As Integer

Selection.HomeKey unit:=wdStory
For i = 1 To ActiveDocument.Paragraphs.Count
Selection.Find.ClearFormatting
With Selection.Find
.Text = "'"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = True

End With

Selection.Find.Execute

With Selection

.EndKey unit:=wdLine, Extend:=wdExtend
.Font.Color = wdColorGreen
.MoveDown unit:=wdLine, Count:=1
.HomeKey unit:=wdLine

End With
i = i + 1
Next i
End Sub
'=============================

Bill Allen wrote:
Sorry if this is an inappropriate post for this area, but I'm not getting
very much of a response at the Word.vba site.

When copying text from the IDE into a Word document, I would like to have
the format match the format in the IDE, specifically changing the color of
the font of the commented lines. I have written the following which does
what I want for a particular line:

Selection.Find.ClearFormatting
With Selection.Find
.Text = "'"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = True

End With

Selection.Find.Execute

With Selection

.EndKey Unit:=wdLine, Extend:=wdExtend
.Font.Color = wdColorGreen
.MoveDown Unit:=wdLine, Count:=1
.HomeKey Unit:=wdLine

End With

As you might have guessed, this works one instance at a time. It finds the
next instance of "*", changes the entire line to green, moves one line down,
goes to the first character position in that line and stops.

What do I need to add to make this routine check the entire document?

Thanks,

Bill Allen






--
Debra Dalgleish
Excel FAQ, Tips & Book List
http://www.contextures.com/tiptech.html



All times are GMT +1. The time now is 12:11 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com