View Single Post
  #2   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Graham Mayor Graham Mayor is offline
external usenet poster
 
Posts: 19,312
Default Macro behaving differenlty on different computers

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

My web site www.gmayor.com
Word MVP web site http://word.mvps.org





paraakaram wrote:
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