Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

Replace word fields with Text

Posted on 2009-07-06
6
Medium Priority
?
356 Views
Last Modified: 2012-05-07
I am trying to replace all fields in a word doc with static text using perl so that the replaced text position is the same as the field.  i.e. remove the field and in its place put some text.

All I seem to be able to do is to replace the content of the field to the desired text.
my $listOfFields = $wordApp->ActiveDocument->Fields();
my $count = $wordApp->ActiveDocument->Fields->Count;
for (my $i = 1; $i <= $count; $i++) {
             my $field = $listOfFields->Item($i);
              $field->{Name} = 'MyFieldName';    #thought this might be useful - but doesn't set the name.
              $field->{Code}->{Text} = 'StaticText';
              $field->Cut;      #doesn't seem to remove the field
}

Open in new window

0
Comment
Question by:crisis_davis
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
6 Comments
 

Author Comment

by:crisis_davis
ID: 24792420
By using mailmerge to merg the document with a list that is pre-configured works a dream.  Now all I need to do is to automate the merge process.  Does anyone know how to run the  merge process from a perl script?
0
 
LVL 37

Accepted Solution

by:
Joanne M. Orzech earned 2000 total points
ID: 24794510
If you're just replacing the content of the field with the exact text contained in the field, why don't you just do Control A (Select All) and Control-Shift F9 to turn the fields to text...?  It's called unlinking the fields.

0
 

Author Closing Comment

by:crisis_davis
ID: 31600443
Love it, - nice and simple - thanx  - will automate it with Perl now that I know what I am trying to do.  many thanks for help.
0
Tech or Treat!

Submit an article about your scariest tech experience—and the solution—and you’ll be automatically entered to win one of 4 fantastic tech gadgets.

 
LVL 37

Expert Comment

by:Joanne M. Orzech
ID: 24796091
Excellent!  I was hoping that was what you were looking for!  So pleased to have been able to assist you.  Thanks so much.

Joanne Orzech
MS Word MVP
EE Zone Advisor
0
 

Author Comment

by:crisis_davis
ID: 24796389
So code now looks like:
my $listOfFields = $wordApp->ActiveDocument->Fields();
my $count = $wordApp->ActiveDocument->Fields->Count;
for (my $i = 1; $i <= $count; $i++) {
             my $field = $listOfFields->Item($i);
              $field->{Code}->{Text} = 'StaticText';
}
$listOfFields->Unlink();

Open in new window

0
 
LVL 37

Expert Comment

by:Joanne M. Orzech
ID: 24796413
Thanks for posting that!  It's all greek to me since I only use VBA (code below to update and unlink fields), but I'm sure will be helpful to anyone who knows perl script  :)  

So thanks!

    Selection.WholeStory
    Selection.Fields.Update
    Selection.Fields.Unlink
    Selection.HomeKey Unit:=wdStory

Open in new window

0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Shortcuts in Word Just the other day I had a training for Microsoft and they wanted me to show how well the new Windows and Office behaved on a touch device, which by the way is great, but it was only then that I realized that using keyboard shortc…
This article describes how to use the Send to Mail Recipient command. The instructions apply generally to Office 2007 and later versions, but Microsoft® Word 2013 was used for the specific steps and figures.  What is Send to Mail Recipient? Send…
This video shows where to find the word count, how to display it, and what it breaks down to in Microsoft Word.
This video walks the viewer through the process of creating Hyperlinks for the web and other documents. Select the "Insert" tab: Click "Hyperlink":  Type "http://" followed by a web address to reference a website or navigate to a document to ref…

610 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question