1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
   |  public void printmyexcelMultiples(bool lastsheet)
        {
            try
            {
                Excel.XlFixedFormatType type = Excel.XlFixedFormatType.xlTypePDF;
                Excel.Workbook xlWorkBookprint = xlApp.Workbooks.Add(Type.Missing);
                Excel.Worksheet xlWorkSheetprint = (Excel.Worksheet)xlWorkBookprint.Worksheets.get_Item(1);
                Excel.Range used = this.multiplesSheet.UsedRange;
 
                xlWorkSheetprint.PageSetup.LeftMargin = 30;
                xlWorkSheetprint.PageSetup.RightMargin = 30;
                xlWorkSheetprint.PageSetup.TopMargin = 75;
                xlWorkSheetprint.PageSetup.BottomMargin = 30;
 
                //set the page printting zoom.
                xlWorkSheetprint.PageSetup.Orientation = Excel.XlPageOrientation.xlLandscape;
                // xlWorkSheetprint.PageSetup.Zoom = 100;
                int start = 5;
                int end = 17;// used.Rows.Count - 1;
 
                //*************************copy the rest files*******************************
 
                int pasteStartRow = xlWorkSheetprint.UsedRange.Rows.Count + 1;
                //lineEvaluation = pasteStartRow;
                Excel.Range rangepaste3x = xlWorkSheetprint.Cells[pasteStartRow, 1] as Excel.Range;
 
                Excel.Range rangecopy3 = used.get_Range(used.Cells[start, 1], used.Cells[end, 4]) as Excel.Range;
                rangecopy3.SpecialCells(Excel.XlCellType.xlCellTypeVisible).EntireRow.Copy();
 
                rangepaste3x.EntireRow.PasteSpecial(Excel.XlPasteType.xlPasteAll);
                rangepaste3x.EntireRow.PasteSpecial(Excel.XlPasteType.xlPasteColumnWidths);
                rangepaste3x.EntireRow.PasteSpecial(Excel.XlPasteType.xlPasteValues);
                int time5 = System.Environment.TickCount;
                int pasteEndRow = xlWorkSheetprint.UsedRange.Rows.Count;
 
                Excel.Range range1 = xlWorkSheetprint.UsedRange.get_Range("A1", getColIndexText(xlWorkSheetprint.UsedRange.Columns.Count) + xlWorkSheetprint.UsedRange.Rows.Count) as Excel.Range;
                Excel.Range hiddeE = range1.get_Range("E1", getColIndexText(xlWorkSheetprint.UsedRange.Columns.Count) + 1) as Excel.Range;
                hiddeE.EntireColumn.Hidden = true;
 
                if (File.Exists(serverroot + "\\Spreadsheets\\RapportPDF\\" + this.Text + "print1.xlsx"))
                    File.Delete(serverroot + "\\Spreadsheets\\RapportPDF\\" + this.Text + "print1.xlsx");
                xlWorkSheetprint.SaveAs(serverroot + "\\Spreadsheets\\RapportPDF\\" + this.Text + "print1.xlsx");
                xlWorkSheetprint.PageSetup.PrintTitleRows = "$1:$5";
                xlWorkSheetprint.PageSetup.BlackAndWhite = false;
                xlWorkSheetprint.PageSetup.CenterHorizontally = true;
                 xlWorkSheetprint.ExportAsFixedFormat(type, serverroot + "\\Spreadsheets\\RapportPDF\\" + this.Text + "printMultiples.pdf", 0, true, true,1, Type.Missing, false, Type.Missing);
                //xlWorkSheetprint.SaveAs(serverroot + "\\Spreadsheets\\RapportPDF\\" + this.Text + "printMultiples.pdf", type, "pme", "pme", true, false, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
 
                if (lastsheet)
                    addPDFParam(serverroot + "\\Spreadsheets\\RapportPDF\\" + this.Text + "printMultiples.pdf", "", 0, 0, null);
                else
                {
                    addPDFParam(serverroot + "\\Spreadsheets\\RapportPDF\\" + this.Text + "printMultiples.pdf", "merge", 1, 0, null);
                }
                xlWorkSheetprint = null;
                xlWorkBookprint.Close();
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString());
            }
        } |