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
Makro druckt 3 Blätter anstatt 1 Blatt
Moderator: Moderatoren
Re: Makro druckt 3 Blätter anstatt 1 Blatt
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
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