VB6からOpenOffice Calcで 以下のようなソースで
印刷をしようとしていますが
プリンターの選択ができず
通常使うプリンターに出力されてしまいます。
Dim args1(0)
Set args1(0) = objServiceManager.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
args1(0).Name = "Printer"
args1(0).Value = "レーザー"
CallByName objDocument, "print", VbMethod, args1()
args1(0).Name = "Printer" → "Name"
・・にしてみましたかダメでした。
下記のようなソースで解決しました。
Dim dispatcher As Object
Set dispatcher = ServiceManager.CreateInstance("com.sun.star.frame.DispatchHelper")
Dim args1(0)
Set args1(0) = ServiceManager.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
args1(0).Name = "Printer"
args1(0).Value = "レーザー"
Call dispatcher.executeDispatch(Document.CurrentController.Frame, ".uno:Printer", "", 0, args1())
ツイート | ![]() |