PeťaT
30.09.2008, 10:38
Dobrý denUž mě přestalo bavit neustále vybírat tiskárnu a nastavovat formátS nějakým echt řešením u nás nikdo nepočítá.Mám makro které umí podle formátu aktuálního sheetuudělat preview (nebo i přímý tisk) správně nastavený (podle přednastastaveného schématu)U plotru nešel nastavit formát tak jsem musel instalovat více ovladačů s různým přednastavením.Public Sub My_PrintDrawing() Dim oPrintMgr As DrawingPrintManager Set oPrintMgr = ThisApplication.ActiveDocument.PrintManagerDim oControlDef As ControlDefinitionSelect Case ThisApplication.ActiveDocument.Sheets.item(1).SizeCase kA4DrawingSheetSize oPrintMgr.Printer = "hp LaserJet 1012" oPrintMgr.ColorMode = kPrintGrayScale oPrintMgr.NumberOfCopies = 1 oPrintMgr.Orientation = kPortraitOrientation oPrintMgr.PaperSize = kPaperSizeA4 oPrintMgr.PrintRange = kPrintCurrentSheet oPrintMgr.ScaleMode = kPrintFullScale Set oControlDef = ThisApplication.CommandManager.ControlDefinitions.item("AppFilePrintPreviewCmd") oControlDef.ExecuteCase kA3DrawingSheetSize oPrintMgr.Printer = "MP 2000 PCL 6" oPrintMgr.ColorMode = kPrintGrayScale oPrintMgr.NumberOfCopies = 1 oPrintMgr.Orientation = kLandscapeOrientation oPrintMgr.PaperSize = kPaperSizeA3 oPrintMgr.PrintRange = kPrintCurrentSheet oPrintMgr.ScaleMode = kPrintFullScale Set oControlDef = ThisApplication.CommandManager.ControlDefinitions.item("AppFilePrintPreviewCmd") oControlDef.ExecuteCase kA2DrawingSheetSize oPrintMgr.Printer = "HP 430 A2" oPrintMgr.ColorMode = kPrintGrayScale oPrintMgr.NumberOfCopies = 1 oPrintMgr.Orientation = kLandscapeOrientation oPrintMgr.PaperSize = kPaperSizeDefault oPrintMgr.PrintRange = kPrintCurrentSheet oPrintMgr.ScaleMode = kPrintFullScale Set oControlDef = ThisApplication.CommandManager.ControlDefinitions.item("AppFilePrintPreviewCmd") oControlDef.ExecuteCase kA1DrawingSheetSize oPrintMgr.Printer = "HP 430 A1" oPrintMgr.ColorMode = kPrintGrayScale oPrintMgr.NumberOfCopies = 1 oPrintMgr.Orientation = kLandscapeOrientation oPrintMgr.PaperSize = kPaperSizeDefault oPrintMgr.PrintRange = kPrintCurrentSheet oPrintMgr.ScaleMode = kPrintFullScale Set oControlDef = ThisApplication.CommandManager.ControlDefinitions.item("AppFilePrintPreviewCmd") oControlDef.ExecuteCase kA0DrawingSheetSize oPrintMgr.Printer = "HP 430 A0" oPrintMgr.ColorMode = kPrintGrayScale oPrintMgr.NumberOfCopies = 1 oPrintMgr.Orientation = kLandscapeOrientation oPrintMgr.PaperSize = kPaperSizeDefault oPrintMgr.PrintRange = kPrintCurrentSheet oPrintMgr.ScaleMode = kPrintFullScale Set oControlDef = ThisApplication.CommandManager.ControlDefinitions.item("AppFilePrintPreviewCmd") oControlDef.ExecuteEnd SelectEnd Sub