ich habe ein Makro erstellt um über MailMerge nach Filterung bestimmter Datensätze Etiketten zu bedrucken. Leider wird immer nur auf dem Standard Drucker geduckt. Die Einstellung im Makro werden nicht beachtet.
hier mein Makro:
Code: Alles auswählen
SUB AutoDruck
Dim MyProps() as Object
Dim oMailMerge as Object
id = thisComponent.drawpage.forms.getByName("Formular").getByName("Lfd_Nr").getCurrentValue
oMailMerge = createunoservice("com.sun.star.text.MailMerge")
oMailMerge.DataSourceName = "Reserve"
oMailMerge.DocumentURL = ConvertToUrl("D:\APPROACH\test.ott")
oMailMerge.CommandType = 0
oMailMerge.Command = "REServe"
oMailMerge.Filter = "Reserve.LFD_NR = " & id 'filter für aktuellen Datensatz
oMailMerge.OutputType = 1
oMailMerge.SinglePrintJobs = False
'*****************************************************************
'Druckereinstellungen
Dim myPrinter(0) as new com.sun.star.beans.PropertyValue
myPrinter(0).Name = "Name"
myPrinter(0).Value = "canon"
oMailMerge.Model.setPrinter(myPrinter)
'*****************************************************************
oMailMerge.execute(MyProps())
END SUB
Auch ein geänderter Drucker in der Vorlage wird nicht benutzt.
Ich habe Libre Office 4.2.4.2 installiert unter Windows 7 64 Bit
Gruß
Medel