Macro behaving differenlty on different computers

P

paraakaram

Hi there,


The problem is that, I have written this macro, which would find the "SET"
type of fields inside the document
and then replace the text inside the "SET Field" with text I pass

This is the macro

/*This would open the document which contains set field*/

Application.Documents.Open ("C:/Test Field.doc")
Application.Visible = True
Call merging
/*Here call is made to another macro */


/*This would try replacing the text inside the set field*/

If ActiveDocument.Fields.Count > 0 Then
For i = 1 To ActiveDocument.Fields.Count
ActiveDocument.Fields.Add
Range:=ActiveDocument.Fields.Item(1).Code.Previous, _
Type:=wdFieldEmpty, _
Text:="SET F256_1 NewText"
ActiveDocument.Fields.Update
Next
End If

The strange part here is, this works perfectly on my system (Word 2003)
but there is a system in my lab where this instead of replacing the text
inside the set field
would insert new set field in the document

It is very strange because only this system shows such a behavior (it has
msword 2002 SP3 )

Thanks & Kind Regards
Paraakaram
 
G

Graham Mayor

You are adding a field rather than replacing the content?
You also appear to have a redundant for/next loop?

Dim strCodes As String
strCodes = ActiveDocument.ActiveWindow.View.ShowFieldCodes
ActiveDocument.ActiveWindow.View.ShowFieldCodes = True
Selection.HomeKey
With ActiveDocument.Fields(1)
.Code.Text = Replace(.Code.Text, _
.Code, "SET F256_1 NewText")
.Update
End With
ActiveDocument.ActiveWindow.View.ShowFieldCodes = strCodes

may be closer to what you want, if there is only the first field involved


--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP


<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
 
P

paraakaram

Hi Graham

Thank you for your reply

Your reply is correct but there is a surprising fact here,

The macro I have written to replace the text inside the field
works fine for all the computers except one system.

What I mean is that, though the way I followed to achieve my requirement
is not perfectly correct unlike yours but it is achieving what I wanted on
all the
system except one, where the another "SET" field gets added instead of
replacing
action taking place.

Thank you for such a prompt reply

Kind Regards
Paraakaram
 

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