Aloha
franky hat geschrieben:Danke für Deine Antwort. Aber irgendwie habe ich ein Brett vor dem Kopp. Kanst Du mir das mal in meinen beiden Dateien so hinbasteln
wie Du es meinst ?
Ich habe Open Office leider nicht (mehr) installiert, deshalb ist das etwas problematisch

Ich kann also nur versuchen, es Dir möglichst plastisch zu erklären:
Ausgehend von Deiner Aussage
franky hat geschrieben:in eimem Writer-Document funktioniert das Makro tadellos. In einem Calc-Dokument funktioniert es nicht.
nehme ich mal an, dass der Code prinzipiell funktioniert und es nur um die Referenzierung der gewünschten Drawpage in einem Calc-Dokument geht.
Während Du im Writer-Dokument mit
arbeiten kannst, um die Drawpage zu referenzieren (anzusprechen, zu benutzen), da ein Writer-Dokument prinzipiell eben nur eine Drawpage hat, musst Du in einem Calc-Dokument die gewünschte Drawpage gezielt ansprechen, da dort jedes Tabellenblatt eine eigene Drawpage hat.
"thisComponent" hat in diesem Fall also nicht die Pseudo-Eigenschaft "DrawPage" - weshalb der von Dir beschriebene Fehler auftritt - sondern nur die Pseudo-Eigenschaft "DrawPages". Mehrere Drawpages (eine pro Tabellenblatt) = Mehrzahl.
Nun musst Du die Drawpage identifizieren, die Du für Dein Makro benötigst.
Wenn Du Dir sicher bist, dass das Makro immer vom entsprechenden Tabellenblatt ausgeführt wird (über eine Schaltfläche o.Ä.), dann ersetzt Du einfach den funktionierenden Codeschnippsel
aus dem Writer-Dokument mit
Kann das Makro auch aus einem anderen Tabellenblatt ausgeführt werden, musst Du das Tabellenblatt und die anhängliche Drawpage noch gezielter ansprechen:
Code: Alles auswählen
thisComponent.Sheets.getByName("meinTabellenblatt").Drawpage
"meinTabellenblatt" ist dabei der Name des Tabellenblatts, in dem Deine Steuerelemente liegen.
Also kurz gesagt, überall, wo Du im Writer-Dokument mit
gearbeitet hast, musst Du im Calc-Dokument die gewünschte Drawpage gezielt raussuchen und ansprechen, z.B.
Code: Alles auswählen
thisComponent.CurrentController.ActiveSheet.Drawpage.machwasweissichwas