GrantTF

Paste to a word bookmark

5 posts in this topic

#1 ·  Posted

Hi All

Trying to populate a word template with data from another application, I have got my content in the paste buffer. I have managed to find some text and then paste with the following

Local $oRangeFound
$oRangeFound = _Word_DocFind($oDoc, "SomeSearchString")
 

If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocFind Example", _
        "Error locating the specified text in the document." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
$oRangeFound.paste

This works fine but I really wanted to do it with a bookmark, so I could put a number of bookmarks in the document template and repeat the process. Overwriting the bookmarks is ok

But I can seem to get the paste to work for the bookmark.

any advice would be much-appreciated

cheers

Grant

 

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Hi GrantTF,

Are you using an english translator? Your post is hard to understand.

If yes, then maybe consider posting in your native language.

Regards.

Edited by Neutro

Share this post


Link to post
Share on other sites

#3 ·  Posted

There is a bookmarks collection available in Words objct model.
You could try to select a bookmark and replace it with your text.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

#4 ·  Posted

11 hours ago, GrantTF said:

I thought I had written it in English, must be my bad grammar -will try and rephrase

I have a word document template that I would like to populate with data from another application, I have the data from the other application in my clipboard and I want to paste it at a bookmark. My code below, works by searching for a phrase  and pasting, but I can't get it to work for a bookmark

Local $sDocument = @ScriptDir & "\Template.docx"
Local $oDoc = _Word_DocOpen($oWord, $sDocument, Default, Default, True)

; move there
Local $oRangeFound
$oRangeFound = _Word_DocFind($oDoc, "stringToReplace")

If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocFind Example", _
        "Error locating the specified text in the document." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
$oRangeFound.paste

MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocFind Example", _
        "string 'stringToReplace' replaced with clibboard.")

 

 

So how do I select a bookmark and paste the clipboard, instead of doing the find

Hopefully, that's easier to understand

 

Quote

 

 

Share this post


Link to post
Share on other sites

#5 ·  Posted

As I described above. Loop through the bookmarks collection, select the one you need and then paste the data.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now