Drucke per Makro

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

Moderator: Moderatoren

Niels
*****
Beiträge: 212
Registriert: Mi, 16.06.2004 06:46
Wohnort: Heikendorf

Drucke per Makro

Beitrag von Niels »

Hallo zusammen,

ich habe ein Calc-Dokument mit 3 Arbeitsblättern und möchte nur eines davon per Makro drucken. Dazu habe ich ein Makro aufgezeichnet:
Datei-Drucke-Auswahl. Klappt auch prima, nur das behämmerte Makro druckt alle 3 Arbeitsblätter. Hat jemand eine Idee warum?

Danke
Niels

Code: Alles auswählen

sub Drucke_Seite_Brother
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(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Printer"
args1(0).Value = "Brother"

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

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

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


end sub
Wer lesen kann ist klar im Vorteil.
Charly
*****
Beiträge: 450
Registriert: Di, 20.01.2004 13:14
Wohnort: München

Beitrag von Charly »

Hallo Niels!

Ich hab dies Problem dadurch gelöst, dass ich über den Menüpunkt Optionen Tabellen Druck, grundsätzlich einstellt habe: Nur das aktuelle Tabellenblatt drucken. Das Makro vom Rekorder aktzeptiert diese Einstellung und druckt nur ein Tabellenblatt aus.

Ansonsten gibt es noch die Möglichkeit per Makro einen Druckbereich zu definieren. Dann wird nur dieser Bereich ausgedruckt.


gruß
Charly
Antworten