Makro druckt 3 Blätter anstatt 1 Blatt

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

Moderator: Moderatoren

Hago
****
Beiträge: 135
Registriert: Di, 07.12.2004 16:44

Makro druckt 3 Blätter anstatt 1 Blatt

Beitrag von Hago »

Hallo,

ich habe ein Makro, das über einen Schalter innerhalb eines Calc-Dokuments gestartet wird:
.................
sub Druck

dim document as object
dim dispatcher as object

document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "$D$4"

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

Dok = ThisComponent
Controller = Dok.CurrentController
Blatt = Controller.ActiveSheet
Zelle = Blatt.getCellRangeByName("$D$3")
Wert = Zelle.Value

dim args3(3) as new com.sun.star.beans.PropertyValue
args3(0).Name = "Copies"
args3(0).Value = Wert
args3(1).Name = "RangeText"
args3(1).Value = "1"
args3(2).Name = "Collate"
args3(2).Value = false
args3(3).Name = "Wait"
args3(3).Value = true

Dok.print(args3())
Dok.close(false)

end sub
.......................................
wenn ich ein Blatt drucken will - dh., ich gebe eine "1" in D3 ein - dann werden 3 Blätter beidseitig bedruckt:
das erste, genau wie gewünscht,
das zweite, einfach leer,
das dritte, so viele Zeilen, wie gedruckt werden müßten, in denen 6 mal "#NAME?" steht und noch ein leerer Bereich.

Ursprünglich gab es in dem Modul, in dem sich auch sub Druck befand, nach "sub Druck" noch "sub Filterein_aus" und "sub MachCSV".
Diese beiden folgenden Makros habe ich inzwischen rausgemacht, weil ich den Eindruck hatte, daß für jedes dieser Makros nochmal gedruckt wird, denn das 3.gedruckte Blatt entsprach genau dem, was bei sub MachCSV rauskommen sollte.
Jetzt wird dieses 3.Blatt immer noch gedruckt, aber es steht da eben statt der richtigen Inhalte nur noch "'NAME?".

Tja, und der Witz ist - alles hat schon mal regelmäßig funktioniert und ich habe meines Wissens nichts verändert.

Kann mir jemand helfen?

...............
inzwischen habe ich bemerkt, daß, wenn ich ganz normal über Datei > Drucken (und da die Einstellung: Seiten 1-2) drucke, alles wie gewünscht gedruckt wird.
Nur übers Makro will das nicht klappen.

Gruß, Hago
Hago
****
Beiträge: 135
Registriert: Di, 07.12.2004 16:44

Re: Makro druckt 3 Blätter anstatt 1 Blatt

Beitrag von Hago »

Hallo,

bemüht Euch nicht, ich habe es schon rausbekommen - einfacher als ich dachte:

Statt
args3(1).Name = "RangeText"

muß es heißen:
args3(1).Name = "Pages"

Gruß, Hago
Antworten