Lawrence Mrazek
lmrazek at lcm-res.com
Thu Apr 15 12:57:02 CDT 2010
Hi Folks: I inherited an app written in Acc2007 (computer in question is running sp2). They have a couple of buttons/reports that need to be able to be quickly sent to various printers, and I'm a bit stuck, specifically in setting the paper size via the "acPRPSUser" constant ... any ideas? I can get Access to switch default printers, but haven't been able to set all of the sizes. Currently using the following: stDocName = ReportName sRpt = stDocName DoCmd.OpenReport stDocName, acViewDesign 'Set the printer to default Set rpt = Reports(sRpt) ' rpt.UseDefaultPrinter = True ' Printers ("Adobe PDF") rpt.Printer = Application.Printers("Canon iR c2880/c3380 PCL5c") ' Sets the printer name. ' rpt.Printer = Application.Printers("Adobe PDF") ' Sets the printer name. 'set the prt object to the Application printer Set prt = rpt.Printer With prt 'Margins ' .LeftMargin = 360 ' in units of twips 1"=1440twips / 10mm = 567twips ' .RightMargin = 360 ' .TopMargin = 901 ' .BottomMargin = 238 ' .ItemSizeHeight = 8640 ' .ItemSizeWidth = 8640 .PaperBin = acPRBNTractor .PaperSize = acPRPSUser ' Application.Printer.ItemSizeHeight = 6000 ' Application.Printer.ItemSizeWidth = 6000 ' 'Orientation .Orientation = acPRORPortrait 'Column / Row Spacing .ColumnSpacing = 360 .RowSpacing = 0 End With DoCmd.Close ObjectType:=acReport, ObjectName:=sRpt, Save:=acSaveYes DoCmd.OpenReport stDocName, acViewPreview Thanks in advance: Larry M. lmrazek at lcm-res.com