oCrystalApp = CREATEOBJECT("CrystalRuntime.Application") oReport = oCrystalApp.OpenReport(sReportFile) nCurrentPage = 1 && need to retrieve this value. Used in Range = 2 below oReport.SelectPrinter(sDriver, sPrinter, sPort) oReport.PaperOrientation = iOrientation oReport.DiscardSavedData() DO CASE CASE iRange = 1 oReport.PrintOut(.F., iCopies, bCollated) CASE iRange = 2 oReport.PrintOut(.F., iCopies, bCollated, iCurrentPage, nCurrentPage) CASE .iRange = 3 oReport.PrintOut(.F., iCopies, bCollated, iStartPage, iEndPage) ENDCASE