Find/Replace macro from excel to word

M

Matt

Hi all:

I am trying to run a macro from excel to open up a word document called
doc1.doc on C:\doc1.doc and do a find and replace in the word document.
I have the code written below and it does the search but it does not
do the replace. Please help as I have been pulling my hair out.
Thanks in advance.


Sub Find_and_Replace()
Dim appWD As Object
Set appWD = CreateObject("Word.Application")

appWD.documents.Open("C:\Doc1.doc").Application.Visible = True

With appWD.Visible = True
With appWD.Application.Selection.Find
.Text = "Date"
.Replacement.Text = "Time"
.Forward = True
.Wrap = wdFindContinue
End With

Do While appWD.Application.Selection.Find.Execute
appWD.Application.Selection.Find.Execute Replace:=wdReplaceAll
Loop

End With

End Sub
 
T

Tom Ogilvy

Since you are using selection, do you have anything selected. I would guess
not.
 
J

JMB

This seems to work fine on my box. In addition to Tom's point, I think you
will have problems using word constants (wdfindcontinue and wdreplaceall)
since you are using late binding.

Sub Find_and_Replace()
Dim appWD As Object
Dim docWD As Object
Set appWD = CreateObject("Word.Application")

Set docWD = appWD.documents.Open("C:\Doc1.doc")
appWD.Visible = True

With docWD.Content.Find
.Text = "Date"
.Replacement.Text = "Time"
.Forward = True
.Wrap = 1
.Execute Replace:=2
End With

End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top