Macro für Drucken bestimmter Seiten wird ignoriert

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

egciuffo
*
Beiträge: 18
Registriert: Mi, 14.05.2008 20:28

Macro für Drucken bestimmter Seiten wird ignoriert

Beitrag von egciuffo »

Hallo!

Bis jetzt hatte ich in Calc in den Optionen "Nur ausgwählte Tabellen drucken" deaktiviert und folgendes Macro laufen (mit dem Macro-Assistenten erstellt), das mittels einer Schaltfläche gestartet wird:

Code: Alles auswählen

sub drucken
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Copies"
args1(0).Value = 1
args1(1).Name = "RangeText"
args1(1).Value = "1"
args1(2).Name = "Collate"
args1(2).Value = false

dispatcher.executeDispatch(document, ".uno:Print", "", 0, args1())

rem ----------------------------------------------------------------------
MsgBox "Das Blatt bitte mit der bedruckten Seite nach oben wieder in den Drucker einlegen. Dann auf OK klicken."

rem ----------------------------------------------------------------------
dim args2(2) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Copies"
args2(0).Value = 1
args2(1).Name = "RangeText"
args2(1).Value = "3"
args2(2).Name = "Collate"
args2(2).Value = false

dispatcher.executeDispatch(document, ".uno:Print", "", 0, args2())

end sub
Aus verschiedenen praktischen Gründen will ich nun die Option "Nur ausgwählte Tabellen drucken" aktivieren, dann funktioniert oben genanntes Macro beim Drucken aber nicht mehr, auch wenn ich es mit dem Assistenten neu erstelle.
Es wird nur die erste (aktive) Seite gedruckt und keine weitere Seite mehr.

Wie muss der Code lauten, damit weiterhin auch die anderen (nicht ausgewählten) Seiten/Tabellen gedruckt werden?
Danke für jede Hilfe!

lg, egciuffo
egciuffo
*
Beiträge: 18
Registriert: Mi, 14.05.2008 20:28

Re: Macro für Drucken bestimmter Seiten wird ignoriert

Beitrag von egciuffo »

Ich habe es nun (nach einer Anleitung in einem anderen Forum) mit
args1(1).Name = "Pages"
statt
args1(1).Name = "RangeText"
versucht, doch das Ergebnis ist leider das gleiche geblieben :-(
egciuffo
*
Beiträge: 18
Registriert: Mi, 14.05.2008 20:28

Re: Macro für Drucken bestimmter Seiten wird ignoriert

Beitrag von egciuffo »

Weiß vielleicht jemand, wo ich eventuell Hilfe dazu finden kann?
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Macro für Drucken bestimmter Seiten wird ignoriert

Beitrag von turtle47 »

Hi Egciuffo,

bei definierten Druckbreichen kannst Du es mal mit:

Code: Alles auswählen

args1(1).Value = "1-12"
versuchen.

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
egciuffo
*
Beiträge: 18
Registriert: Mi, 14.05.2008 20:28

Re: Macro für Drucken bestimmter Seiten wird ignoriert

Beitrag von egciuffo »

Hallo,
vielen Dank für die Antwort!
Ich habe dazu noch zwei Fragen:
1) Was bedeutet "1-12" in args1(1).Value = "1-12"? Sind das die Zeilen?
2) Verstehe ich das richtig: ich müsste vorher für jede Tabelle im Dokument zuerst einen Druckbereich festlegen?

lg, egciuffo
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Macro für Drucken bestimmter Seiten wird ignoriert

Beitrag von turtle47 »

Hi egciuffo,
egciuffo hat geschrieben:Was bedeutet "1-12" in args1(1).Value = "1-12"? Sind das die Zeilen?
Nein, das sind die Seiten. Also Seite 1 bis 12.
egciuffo hat geschrieben:Verstehe ich das richtig: ich müsste vorher für jede Tabelle im Dokument zuerst einen Druckbereich festlegen?
Ja, genau so ist es!

Schöne Grüsse.

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Antworten