von kilix » Di, 30.05.2023 22:12
Hallo,
bis jetzt ist mir alles was ich erreichen wollte, zumindest nach einigem Suchen und Probieren, ganz gut gelungen. Doch jetzt stehe ich an: ich soll einen Datenbereich auf 2 Tabellen einer Zieldtei kopieren. Ich habe mir dazu einen Makro "gestrickt" der ohne Fehlermeldung durchläuft, das Zieldokument öffnet und auch wieder schließt aber es werden keine Daten kopiert. Ich würde mich sehr freuen wenn mir jemand auf die Sprünge helfen könnte. Hier ist meine Code:
Code: Alles auswählen
Sub Bereich_kopieren
oDoc1=ThisComponent ! Quelle
'Aktuelles Verzeichnis einlesen und Ziel-Datei öffnen
surl = thiscomponent.url
apfad = split(surl,"/")
apfad(ubound(apfad)) = "ziel.ods"
sURL = convertToURL(join(apfad,"/"))
dim myFileProp() as new com.sun.star.beans.PropertyValue
oDoc2 = StarDesktop.loadComponentFromURL(sURL, "_blank", 0, myFileProp())
'1: Auslesen der Daten von quelle.ods in ein Array der Daten
aDaten=oDoc1.Sheets(3).getCellRangeByName("A3:B503").getDataArray
'Schreiben der Daten in ziel.ods
oDoc2.Sheets(2).getCellRangeByName("A5:B505").setDataArray(aDaten)
oDoc2.Sheets(4).getCellRangeByName("A5:B505").setDataArray(aDaten)
'Ziel-Datei schließen
oDoc2.close(false)
End Sub
Hallo,
bis jetzt ist mir alles was ich erreichen wollte, zumindest nach einigem Suchen und Probieren, ganz gut gelungen. Doch jetzt stehe ich an: ich soll einen Datenbereich auf 2 Tabellen einer Zieldtei kopieren. Ich habe mir dazu einen Makro "gestrickt" der ohne Fehlermeldung durchläuft, das Zieldokument öffnet und auch wieder schließt aber es werden keine Daten kopiert. Ich würde mich sehr freuen wenn mir jemand auf die Sprünge helfen könnte. Hier ist meine Code:
[code]
Sub Bereich_kopieren
oDoc1=ThisComponent ! Quelle
'Aktuelles Verzeichnis einlesen und Ziel-Datei öffnen
surl = thiscomponent.url
apfad = split(surl,"/")
apfad(ubound(apfad)) = "ziel.ods"
sURL = convertToURL(join(apfad,"/"))
dim myFileProp() as new com.sun.star.beans.PropertyValue
oDoc2 = StarDesktop.loadComponentFromURL(sURL, "_blank", 0, myFileProp())
'1: Auslesen der Daten von quelle.ods in ein Array der Daten
aDaten=oDoc1.Sheets(3).getCellRangeByName("A3:B503").getDataArray
'Schreiben der Daten in ziel.ods
oDoc2.Sheets(2).getCellRangeByName("A5:B505").setDataArray(aDaten)
oDoc2.Sheets(4).getCellRangeByName("A5:B505").setDataArray(aDaten)
'Ziel-Datei schließen
oDoc2.close(false)
End Sub
[/code]