}//saveInExcelAsync /// <summary> /// Метод вывода приходной информации в Excel-файл. /// </summary> /// <param name="availabilityList">Список оприходованных товаров.</param> /// <param name="agent">Фирма-покупатель.</param> private void saveInExcel(IList <OperationDetails> operDetList, string agent) { Purchase purchase = operDetList[0].Operation as Purchase; List <SparePart> sparePartsList = operDetList.Select(od => od.SparePart).ToList(); Excel.Application ExcelApp = new Excel.Application(); Excel.Workbook ExcelWorkBook = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value); //Книга. Excel.Worksheet ExcelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1); //Таблица. //Настраиваем горизонтальные и вертикальные границы области печати. ExcelWorkSheet.PageSetup.TopMargin = ExcelWorkSheet.PageSetup.BottomMargin = 7; ExcelWorkSheet.PageSetup.LeftMargin = ExcelWorkSheet.PageSetup.RightMargin = 7; int row = 1, column = 1; //Выводим Id и Дату. OperationIdAndDateExcelOutput(ExcelWorkSheet, purchase, row, column); //Выводим поставщика и покупателя. row += 2; ExcelApp.Cells[row, column].Font.Name = "Consolas"; ExcelApp.Cells[row, column] = String.Format("\t\t{0,-50}{1}", "Поставщик : " + purchase.Contragent.ContragentName, "Покупатель : " + agent); //Заполняем таблицу. FillTheExcelList(ExcelWorkSheet, operDetList, ref row, column); //Выводим имена агентов. row += 2; ExcelApp.Cells[row, column].Font.Name = "Consolas"; //моноширинный шрифт ExcelApp.Cells[row, column] = String.Format("\t\t{0,-50}{1}", "Выписал : " + purchase.ContragentEmployee, "Принял : " + Form1.CurEmployee.LastName + " " + Form1.CurEmployee.FirstName); //Делаем визуальное отделение информации от заметки, с помощью линии. row += 2; //Выводим заметку к операции. DescriptionExcelOutput(ExcelWorkSheet, purchase.Description, ref row, column); //Вызываем нашу созданную эксельку. ExcelApp.Visible = ExcelApp.UserControl = true; ExcelWorkBook.PrintPreview(); //открываем окно предварительного просмотра. }//saveInExcel
}//saveInExcelAsync /// <summary> /// Метод вывода расходной информации в Excel-файл. /// </summary> /// <param name="purchase">Информация о расходе.</param> /// <param name="agent">Фирма-продавец.</param> private void saveInExcel(Sale sale, string agent) { IList <OperationDetails> operDetList = sale.OperationDetailsList; Excel.Application ExcelApp = new Excel.Application(); Excel.Workbook ExcelWorkBook = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value); //Книга. Excel.Worksheet ExcelWorkSheet = (Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1); //Таблица. //Настраиваем горизонтальные и вертикальные границы области печати. ExcelWorkSheet.PageSetup.TopMargin = ExcelWorkSheet.PageSetup.BottomMargin = 7; ExcelWorkSheet.PageSetup.LeftMargin = ExcelWorkSheet.PageSetup.RightMargin = 7; int row = 1, column = 1; //Выводим Id и Дату. OperationIdAndDateExcelOutput(ExcelWorkSheet, sale, row, column); //Выводим поставщика и покупателя. row += 2; ExcelApp.Cells[row, column].Font.Name = "Consolas"; ExcelApp.Cells[row, column] = String.Format("\t\t{0,-40}{1}", "Продавец : " + agent, "Покупатель : " + sale.Contragent.ContragentName); //Заполняем таблицу. FillTheExcelList(ExcelWorkSheet, operDetList, ref row, column); //Выводим имена агентов. row += 2; ExcelApp.Cells[row, column].Font.Name = "Consolas"; ExcelApp.Cells[row, column] = String.Format("\t\t{0,-40}{1}", "Выписал : " + Form1.CurEmployee.LastName + " " + Form1.CurEmployee.FirstName, "Принял : " + sale.ContragentEmployee); row += 2; //Выводим заметку к операции. DescriptionExcelOutput(ExcelWorkSheet, sale.Description, ref row, column); //Вызываем нашу созданную эксельку. ExcelApp.Visible = ExcelApp.UserControl = true; ExcelWorkBook.PrintPreview(); //открываем окно предварительного просмотра. }//saveInExcel
private void ExcelPreview() { Excel.Application exObj = null; // Excelオブジェクト Excel.Workbook exBook = null; // workbook try { exObj = new Excel.Application(); //exObj.Visible = true; // Excelウィンドウを表示する // Excelファイルオープン exBook = (Excel.Workbook)(exObj.Workbooks.Open( Environment.CurrentDirectory + @"\" + EXCEL_FILE_NAME // Excelファイル名 )); // 印刷プレビュー表示 exObj.Visible = true; // Excelウィンドウを表示する exBook.PrintPreview(true); exObj.Visible = false; // Excelウィンドウを表示する exObj.Quit(); } catch (Exception ex) { MessageBox.Show(GetExcetionMessage(ex), "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { if (exBook != null) { Marshal.ReleaseComObject(exBook); } if (exObj != null) { Marshal.ReleaseComObject(exObj); } } }