Jump to content

Recommended Posts

Posted

Hi, I want to open two docx files with LibreOffice and copy the header and the footer from docx1 to docx2.

I have the following code, that opens two docx files, copy the footer from docx1 and paste it into the text content from docx2.

But 1.: I don't want to use the Send command and 2.: I want to insert the footer content into the footer.

Any ideas how I can make this work? 

Global $ServiceManager
$ServiceManager = ObjCreate("com.sun.star.ServiceManager")

$MSword = $ServiceManager.createInstance("com.sun.star.frame.Desktop")

$source = Convert2URL("C:\test1.docx")
$target = Convert2URL("C:\test2.docx")

Global $args[3]
$args[0] = MakePropertyValue("ReadOnly", False)
$args[1] = MakePropertyValue("Password", "")
$args[2] = MakePropertyValue("Hidden", False)

$doc1 = $MSword.loadComponentFromURL($source, "_blank", 0, $args)
WinWait("[CLASS:SWT_Window0]", "", 1) ;wait 1 second

Send("^{PGDN}") ;open the footer
Send("^a")      ;select all
Send("^c")      ;copy

$doc2 = $MSword.loadComponentFromURL($target, "_blank", 0, $args)
WinWait("[CLASS:SWT_Window0]", "", 1) ;wait 1 second

Send("^v")      ;paste



Func MakePropertyValue($cName, $uValue)
   Local $Pstruc
   $Pstruc = $ServiceManager.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
   $Pstruc.Name = $cName
   $Pstruc.Value = $uValue
   Return $Pstruc
EndFunc

Func Convert2URL($fname)
   $fname = StringReplace($fname, ":", "|")
   $fname = StringReplace($fname, " ", "%20")
   $fname = "file:///" & StringReplace($fname, "\", "/")
   Return $fname
EndFunc

 

Posted

I'm not sure this helps as I have never worked with LibreOffice myself.
You could give the Writer UDF written by donnyh13 a try.

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...