![]() |
|
#1
|
|||
|
|||
![]()
Hi,
We have got a template (which is prepared by the dealer group and we have no control on changing the template). When document opens I want to word to find and replace all the instances of "monitor" to "review". Is it possible to do that? Regards Umesh Banga |
#2
|
||||
|
||||
![]()
Yes, it's possible. It's essentially a matter of adding the requisite code to a Document_Open sub. For example:
Code:
With ActiveDocument.Content.Find .ClearFormatting .Replacement.ClearFormatting .Text = "monitor" .Replacement.Text = "review" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False .Execute Replace:=wdReplaceAll End With
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#3
|
|||
|
|||
![]()
I have entered this code, normal.dotm - this document. It does not do anything - when I open the document.
I have tried the Find feature to find - "Review" and it is still in the document. What do you think I am doing wrong? |
#4
|
||||
|
||||
![]()
Did you add the code to a Document_Open sub, as I said you should?
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#5
|
|||
|
|||
![]()
Yes it worked.
![]() |
#6
|
|||
|
|||
![]()
Hi
I have added following code to the code you provided, it is not replacing "folder or on a seperate disc" with blank. Can you please advice on this? Code:
Sub Document_Open() With ActiveDocument.Content.find .ClearFormatting .Replacement.ClearFormatting .Text = "monitor" .Replacement.Text = "review" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False .Execute Replace:=wdReplaceAll End With With ActiveDocument.Content.find .ClearFormatting .Replacement.ClearFormatting .Text = "" .Replacement.Text = "folder or on a seperate disc" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = True .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False .Execute Replace:=wdReplaceAll End With With ActiveDocument If InStr(.Sections.First.Footers(wdHeaderFooterFirstPage).Range.Text, "Statement of Advice") > 0 Then Application.OrganizerCopy Source:=.AttachedTemplate.FullName, Destination:=.FullName, _ Name:="Custom Breakout", Object:=wdOrganizerObjectStyles Application.OrganizerCopy Source:=.AttachedTemplate.FullName, Destination:=.FullName, _ Name:="Custom Breakout Subheading", Object:=wdOrganizerObjectStyles Application.OrganizerCopy Source:=.AttachedTemplate.FullName, Destination:=.FullName, _ Name:="Custom Page Heading", Object:=wdOrganizerObjectStyles Application.OrganizerCopy Source:=.AttachedTemplate.FullName, Destination:=.FullName, _ Name:="Custom Page Subheading 1.0", Object:=wdOrganizerObjectStyles Application.OrganizerCopy Source:=.AttachedTemplate.FullName, Destination:=.FullName, _ Name:="Custom Paragraph Main Heading 1.0", Object:=wdOrganizerObjectStyles End If End With End Sub |
#7
|
|||
|
|||
![]()
any suggestions for the above code?
|
#8
|
||||
|
||||
![]()
Hi Umesh,
The flaw is pretty obvious. Have a look at what you have for the Find text and the Replacement text ... compare that against the strings used for the Find text and the Replacement text in the first part of the sub.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
![]() |
netchie | Word VBA | 6 | 08-28-2012 03:37 PM |
![]() |
icsjohn | Word VBA | 2 | 12-07-2011 06:44 PM |
![]() |
tollanarama | Word | 4 | 01-25-2011 02:19 AM |
Lock words in a document, but allow for input within the document | tlinde | Word | 1 | 02-09-2010 09:07 PM |
How to stop "replace"'ing new words (in desperate need of advice) | bme081 | Word | 6 | 11-02-2009 05:57 AM |