563 lines
23 KiB
C#
563 lines
23 KiB
C#
|
//using System;
|
|||
|
//using System.Diagnostics;
|
|||
|
//using System.Globalization;
|
|||
|
//using System.IO;
|
|||
|
//using System.Reflection;
|
|||
|
//using System.Runtime.InteropServices;
|
|||
|
//using System.Text;
|
|||
|
//using System.Windows;
|
|||
|
//using Microsoft.Office.Interop.Excel;
|
|||
|
//using Application = Microsoft.Office.Interop.Excel.Application;
|
|||
|
|
|||
|
|
|||
|
//namespace ExtendedGrid.Classes
|
|||
|
//{
|
|||
|
// internal class ExportToExcelService
|
|||
|
// {
|
|||
|
// //[DllImport("Oleacc.dll")]
|
|||
|
// //public static extern int AccessibleObjectFromWindow(int hwnd, uint dwObjectId, byte[] riid, ref System.Windows.Window ptr);
|
|||
|
|
|||
|
// public delegate bool EnumChildCallback(int hwnd, ref int lParam);
|
|||
|
|
|||
|
// [DllImport("User32.dll")]
|
|||
|
// public static extern bool EnumChildWindows(int hWndParent, EnumChildCallback lpEnumFunc, ref int lParam);
|
|||
|
|
|||
|
// [DllImport("User32.dll")]
|
|||
|
// public static extern int GetClassName(int hWnd, StringBuilder lpClassName, int nMaxCount);
|
|||
|
|
|||
|
// public static bool EnumChildProc(int hwndChild, ref int lParam)
|
|||
|
// {
|
|||
|
// var buf = new StringBuilder(128);
|
|||
|
// GetClassName(hwndChild, buf, 128);
|
|||
|
// if (buf.ToString() == "EXCEL7")
|
|||
|
// {
|
|||
|
// lParam = hwndChild;
|
|||
|
// return false;
|
|||
|
// }
|
|||
|
// return true;
|
|||
|
// }
|
|||
|
|
|||
|
// internal static void CreateExcelFromClipboard(string worksheetName, string fullFilePath, bool toOpen)
|
|||
|
// {
|
|||
|
// //Excel Application class
|
|||
|
// var app = new Application();
|
|||
|
// //Get process id
|
|||
|
// int excelProcessId = GetApplicationProcessId(app);
|
|||
|
|
|||
|
// try
|
|||
|
// {
|
|||
|
// //Add workbook
|
|||
|
// Workbook theWorkbook = app.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
|
|||
|
// //Add worksheet
|
|||
|
// var theWorksheet =
|
|||
|
// (Worksheet)theWorkbook.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
// string sheetName = worksheetName;
|
|||
|
// if (worksheetName.Length > 31)
|
|||
|
// sheetName = worksheetName.Substring(0, 31);
|
|||
|
// theWorksheet.Name = sheetName;
|
|||
|
// app.SheetsInNewWorkbook = 1;
|
|||
|
// app.DisplayAlerts = false;
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
|
|||
|
// //Paste to the worksheet from clpboard
|
|||
|
// theWorksheet.Paste(Type.Missing, Type.Missing);
|
|||
|
// //Apply Borders
|
|||
|
// ApplyBorder(theWorksheet.UsedRange);
|
|||
|
|
|||
|
// //Auto Fit All columns
|
|||
|
// Range xlRange = theWorksheet.UsedRange;
|
|||
|
// // put all hardcodes in a constant class
|
|||
|
// xlRange.Font.Name = "Arial";
|
|||
|
// xlRange.Font.Size = 9;
|
|||
|
// var firstRowRange = (Range)xlRange.Rows[1, Missing.Value];
|
|||
|
// firstRowRange.EntireRow.Font.Bold = true;
|
|||
|
// firstRowRange.EntireRow.HorizontalAlignment = XlHAlign.xlHAlignCenter;
|
|||
|
// //Set Wrap Test to false
|
|||
|
// xlRange.WrapText = false;
|
|||
|
// xlRange.Columns.AutoFit();
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
|
|||
|
// //Save the file
|
|||
|
// theWorkbook.SaveAs(fullFilePath, XlFileFormat.xlOpenXMLWorkbook, Type.Missing, Type.Missing,
|
|||
|
// Type.Missing, Type.Missing, XlSaveAsAccessMode.xlNoChange,
|
|||
|
// Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
// if (!toOpen)
|
|||
|
// {
|
|||
|
// //Clean up
|
|||
|
// app.Quit();
|
|||
|
// Marshal.ReleaseComObject(app);
|
|||
|
// }
|
|||
|
// }
|
|||
|
// catch
|
|||
|
// {
|
|||
|
// ForceExcelClose(excelProcessId);
|
|||
|
// throw;
|
|||
|
// }
|
|||
|
// finally
|
|||
|
// {
|
|||
|
// app.Visible = toOpen;
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// internal static void CreatePdfFromClipboard(string worksheetName, string fullFilePath, bool toOpen)
|
|||
|
// {
|
|||
|
// //Excel Application class
|
|||
|
// var app = new Application();
|
|||
|
// //Get process id
|
|||
|
// int excelProcessId = GetApplicationProcessId(app);
|
|||
|
// app.Visible = false;
|
|||
|
// try
|
|||
|
// {
|
|||
|
// //Add workbook
|
|||
|
// Workbook theWorkbook = app.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
|
|||
|
// //Add worksheet
|
|||
|
// var theWorksheet =
|
|||
|
// (Worksheet)theWorkbook.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
// string sheetName = worksheetName;
|
|||
|
// if (worksheetName.Length > 31)
|
|||
|
// sheetName = worksheetName.Substring(0, 31);
|
|||
|
// theWorksheet.Name = sheetName;
|
|||
|
// app.SheetsInNewWorkbook = 1;
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
// app.DisplayAlerts = false;
|
|||
|
// //Paste to the worksheet from clpboard
|
|||
|
// theWorksheet.Paste(Type.Missing, Type.Missing);
|
|||
|
// //Apply Borders
|
|||
|
// ApplyBorder(theWorksheet.UsedRange);
|
|||
|
|
|||
|
// //Auto Fit All columns
|
|||
|
// Range xlRange = theWorksheet.UsedRange;
|
|||
|
// // put all hardcodes in a constant class
|
|||
|
// xlRange.Font.Name = "Arial";
|
|||
|
// xlRange.Font.Size = 9;
|
|||
|
// var firstRowRange = (Range)xlRange.Rows[1, Missing.Value];
|
|||
|
// firstRowRange.EntireRow.Font.Bold = true;
|
|||
|
// firstRowRange.EntireRow.HorizontalAlignment = XlHAlign.xlHAlignCenter;
|
|||
|
// //Set Wrap Test to false
|
|||
|
// xlRange.WrapText = false;
|
|||
|
// xlRange.Columns.AutoFit();
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
|
|||
|
// //Save the file
|
|||
|
// string xcelFile = Path.Combine(Path.GetTempPath(),
|
|||
|
// Path.GetFileNameWithoutExtension(fullFilePath) + ".xlsx");
|
|||
|
// theWorkbook.SaveAs(xcelFile, XlFileFormat.xlOpenXMLWorkbook, Type.Missing, Type.Missing,
|
|||
|
// Type.Missing, Type.Missing, XlSaveAsAccessMode.xlNoChange,
|
|||
|
// Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
|
|||
|
// theWorksheet.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, fullFilePath,
|
|||
|
// XlFixedFormatQuality.xlQualityStandard, true, false, Missing.Value,
|
|||
|
// Missing.Value, toOpen, Missing.Value);
|
|||
|
|
|||
|
|
|||
|
// //Clean up
|
|||
|
// app.Quit();
|
|||
|
// Marshal.ReleaseComObject(app);
|
|||
|
// File.Delete(xcelFile);
|
|||
|
// }
|
|||
|
// catch
|
|||
|
// {
|
|||
|
// MessageBox.Show(
|
|||
|
// "Please add 2007 Microsoft Office Add-in: Microsoft Save as PDF or XPS , dowload it from this location http://www.microsoft.com/download/en/details.aspx?id=7",
|
|||
|
// "Error", MessageBoxButton.OK, MessageBoxImage.Error);
|
|||
|
// ForceExcelClose(excelProcessId);
|
|||
|
// throw;
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// internal static void CreateCsvFromClipboard(string workSheetName, string fullFilePath, bool toOpen)
|
|||
|
// {
|
|||
|
// StreamWriter sw = null;
|
|||
|
|
|||
|
// try
|
|||
|
// {
|
|||
|
// sw = new StreamWriter(fullFilePath);
|
|||
|
// string clipboardText = Clipboard.GetText();
|
|||
|
// if (clipboardText.Contains(","))
|
|||
|
// {
|
|||
|
// string[] splitted = clipboardText.Split(',');
|
|||
|
// for (int i = 0; i < splitted.Length; i++)
|
|||
|
// {
|
|||
|
// if (i == 0)
|
|||
|
// {
|
|||
|
// var current = splitted[i];
|
|||
|
// var lastIndex = current.LastIndexOf("\t", StringComparison.Ordinal);
|
|||
|
// if (lastIndex != -1)
|
|||
|
// {
|
|||
|
// current = current.Insert(lastIndex + 1, "\"");
|
|||
|
// splitted[i] = current;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// else
|
|||
|
// {
|
|||
|
// var current = splitted[i];
|
|||
|
// int firstIndex = current.IndexOf("\t", StringComparison.Ordinal);
|
|||
|
// if (firstIndex != -1)
|
|||
|
// {
|
|||
|
// current = current.Insert(firstIndex, "\"");
|
|||
|
// splitted[i] = current;
|
|||
|
// }
|
|||
|
// int lastIndex = current.LastIndexOf("\t", StringComparison.Ordinal);
|
|||
|
// if (lastIndex != -1)
|
|||
|
// {
|
|||
|
// current = current.Insert(lastIndex + 1, "\"");
|
|||
|
// splitted[i] = current;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// }
|
|||
|
// if (splitted.Length > 1)
|
|||
|
// {
|
|||
|
// string modifiedText = "";
|
|||
|
// int index = 0;
|
|||
|
// foreach (string s in splitted)
|
|||
|
// {
|
|||
|
// if (index == 0)
|
|||
|
// {
|
|||
|
// modifiedText = modifiedText + s;
|
|||
|
// }
|
|||
|
// else
|
|||
|
// {
|
|||
|
// modifiedText = modifiedText + "," + s;
|
|||
|
// }
|
|||
|
|
|||
|
// index++;
|
|||
|
// }
|
|||
|
// clipboardText = modifiedText;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// clipboardText = clipboardText.Replace(" ", ",");
|
|||
|
// sw.Write(clipboardText);
|
|||
|
|
|||
|
// }
|
|||
|
// finally
|
|||
|
// {
|
|||
|
// if (sw != null) sw.Close();
|
|||
|
// Process.Start(fullFilePath);
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// private static int GetApplicationProcessId(_Application excelApp)
|
|||
|
// {
|
|||
|
// int excelPid = -1;
|
|||
|
// //
|
|||
|
// // Get the Excel instance's process ID...used later
|
|||
|
// // to prevent orphaned Excel processes.
|
|||
|
// //
|
|||
|
// Process[] aProcesses = Process.GetProcesses();
|
|||
|
// for (int i = 0; i <= aProcesses.GetUpperBound(0); i++)
|
|||
|
// {
|
|||
|
// if (aProcesses[i].MainWindowHandle.ToString() == excelApp.Hwnd.ToString(CultureInfo.InvariantCulture))
|
|||
|
// {
|
|||
|
// excelPid = aProcesses[i].Id;
|
|||
|
// break;
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
|
|||
|
// return excelPid;
|
|||
|
// }
|
|||
|
|
|||
|
// private static void ForceExcelClose(int excelPid)
|
|||
|
// {
|
|||
|
// Process[] aProcesses = Process.GetProcesses();
|
|||
|
// Process aProcess = null;
|
|||
|
|
|||
|
// //
|
|||
|
// // Look for an Excel process matching the one we started.
|
|||
|
// //
|
|||
|
// for (int i = 0; i <= aProcesses.GetUpperBound(0); i++)
|
|||
|
// {
|
|||
|
// if (aProcesses[i].Id == excelPid)
|
|||
|
// {
|
|||
|
// aProcess = aProcesses[i];
|
|||
|
// break;
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// //
|
|||
|
// // If we found a matching Excel proceess with no main window
|
|||
|
// // associated main window, kill it.
|
|||
|
// //
|
|||
|
// if (aProcess != null)
|
|||
|
// {
|
|||
|
// if (aProcess.ProcessName.ToUpper() == "EXCEL")
|
|||
|
// {
|
|||
|
// if (!aProcess.HasExited)
|
|||
|
// {
|
|||
|
// aProcess.Kill();
|
|||
|
// }
|
|||
|
// }
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// internal static string GetExcelColumnName(int columnNumber)
|
|||
|
// {
|
|||
|
// int dividend = columnNumber;
|
|||
|
// string columnName = String.Empty;
|
|||
|
// while (dividend > 0)
|
|||
|
// {
|
|||
|
// int modulo = (dividend - 1) % 26;
|
|||
|
// columnName = Convert.ToChar(65 + modulo) + columnName;
|
|||
|
// dividend = (dividend - modulo) / 26;
|
|||
|
// }
|
|||
|
// return columnName;
|
|||
|
// }
|
|||
|
|
|||
|
// internal static void ClearBorder(Range range)
|
|||
|
// {
|
|||
|
// if (range == null)
|
|||
|
// return;
|
|||
|
|
|||
|
// range.Borders[XlBordersIndex.xlDiagonalDown].LineStyle = Constants.xlNone;
|
|||
|
// range.Borders[XlBordersIndex.xlDiagonalUp].LineStyle = Constants.xlNone;
|
|||
|
// Array xlBorderArray = Enum.GetValues(typeof(XlBordersIndex));
|
|||
|
// foreach (object xlBorder in xlBorderArray)
|
|||
|
// {
|
|||
|
// switch ((XlBordersIndex)xlBorder)
|
|||
|
// {
|
|||
|
// case XlBordersIndex.xlInsideHorizontal:
|
|||
|
// case XlBordersIndex.xlInsideVertical:
|
|||
|
// case XlBordersIndex.xlEdgeRight:
|
|||
|
// case XlBordersIndex.xlEdgeBottom:
|
|||
|
// case XlBordersIndex.xlEdgeTop:
|
|||
|
// case XlBordersIndex.xlEdgeLeft:
|
|||
|
// range.Borders[(XlBordersIndex)xlBorder].LineStyle =
|
|||
|
// Constants.xlNone;
|
|||
|
// break;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// internal static void ApplyBorder(Range usedRange)
|
|||
|
// {
|
|||
|
// if (usedRange == null)
|
|||
|
// return;
|
|||
|
|
|||
|
// usedRange.Borders[XlBordersIndex.xlDiagonalDown].LineStyle = Constants.xlNone;
|
|||
|
// usedRange.Borders[XlBordersIndex.xlDiagonalUp].LineStyle = Constants.xlNone;
|
|||
|
// Array xlBorderArray = Enum.GetValues(typeof(XlBordersIndex));
|
|||
|
// foreach (object xlBorder in xlBorderArray)
|
|||
|
// {
|
|||
|
// switch ((XlBordersIndex)xlBorder)
|
|||
|
// {
|
|||
|
// case XlBordersIndex.xlInsideHorizontal:
|
|||
|
// case XlBordersIndex.xlInsideVertical:
|
|||
|
// case XlBordersIndex.xlEdgeRight:
|
|||
|
// case XlBordersIndex.xlEdgeBottom:
|
|||
|
// case XlBordersIndex.xlEdgeTop:
|
|||
|
// case XlBordersIndex.xlEdgeLeft:
|
|||
|
// usedRange.Borders[(XlBordersIndex)xlBorder].LineStyle = XlLineStyle.xlContinuous;
|
|||
|
// usedRange.Borders[(XlBordersIndex)xlBorder].ColorIndex =
|
|||
|
// Constants.xlAutomatic;
|
|||
|
// usedRange.Borders[(XlBordersIndex)xlBorder].TintAndShade = 0;
|
|||
|
// usedRange.Borders[(XlBordersIndex)xlBorder].Weight = XlBorderWeight.xlThin;
|
|||
|
// break;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// internal static void CreateExcelFromClipboard(string workSheetName, string fullFilePath,
|
|||
|
// ExcelTableStyle excelTableStyle, bool toOpen)
|
|||
|
// {
|
|||
|
// //Excel Application class
|
|||
|
// var app = new Application();
|
|||
|
|
|||
|
// //Get process id
|
|||
|
// int excelProcessId = GetApplicationProcessId(app);
|
|||
|
|
|||
|
// app.DisplayAlerts = false;
|
|||
|
// try
|
|||
|
// {
|
|||
|
// //Add workbook
|
|||
|
// Workbook theWorkbook = app.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
|
|||
|
// //Add worksheet
|
|||
|
// var theWorksheet =
|
|||
|
// (Worksheet)theWorkbook.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
// string sheetName = workSheetName;
|
|||
|
// if (workSheetName.Length > 31)
|
|||
|
// sheetName = workSheetName.Substring(0, 31);
|
|||
|
// theWorksheet.Name = sheetName;
|
|||
|
// app.SheetsInNewWorkbook = 1;
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
// //Paste to the worksheet from clpboard
|
|||
|
// theWorksheet.Paste(Type.Missing, Type.Missing);
|
|||
|
// //Apply Borders
|
|||
|
// ApplyBorder(theWorksheet.UsedRange);
|
|||
|
// //Auto Fit All columns
|
|||
|
// Range xlRange = theWorksheet.UsedRange;
|
|||
|
// // put all hardcodes in a constant class
|
|||
|
// xlRange.Font.Name = "Arial";
|
|||
|
// xlRange.Font.Size = 9;
|
|||
|
// var firstRowRange = (Range)xlRange.Rows[1, Missing.Value];
|
|||
|
// firstRowRange.EntireRow.Font.Bold = true;
|
|||
|
// firstRowRange.EntireRow.HorizontalAlignment = XlHAlign.xlHAlignCenter;
|
|||
|
// //Set Wrap Test to false
|
|||
|
// xlRange.WrapText = false;
|
|||
|
// object misValue = Missing.Value;
|
|||
|
// theWorksheet.ListObjects.Add(XlListObjectSourceType.xlSrcRange,
|
|||
|
// xlRange, misValue, XlYesNoGuess.xlYes, misValue).Name = "myTableList";
|
|||
|
// string tableStyleName = "TableStyle" + excelTableStyle;
|
|||
|
// theWorksheet.ListObjects["myTableList"].TableStyle = tableStyleName;
|
|||
|
// xlRange.Columns.AutoFit();
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
// //Save the file
|
|||
|
// theWorkbook.SaveAs(fullFilePath, XlFileFormat.xlOpenXMLWorkbook, Type.Missing, Type.Missing,
|
|||
|
// Type.Missing, Type.Missing, XlSaveAsAccessMode.xlNoChange,
|
|||
|
// Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
// if (!toOpen)
|
|||
|
// {
|
|||
|
// //Clean up
|
|||
|
// app.Quit();
|
|||
|
// Marshal.ReleaseComObject(app);
|
|||
|
// }
|
|||
|
// }
|
|||
|
// catch
|
|||
|
// {
|
|||
|
// ForceExcelClose(excelProcessId);
|
|||
|
// throw;
|
|||
|
// }
|
|||
|
// finally
|
|||
|
// {
|
|||
|
// app.Visible = toOpen;
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// internal static void CreatePdfFromClipboard(string workSheetName, string fullFilePath,
|
|||
|
// ExcelTableStyle tableStyle, bool toOpen)
|
|||
|
// {
|
|||
|
// //Excel Application class
|
|||
|
// var app = new Application();
|
|||
|
// //Get process id
|
|||
|
// int excelProcessId = GetApplicationProcessId(app);
|
|||
|
// app.DisplayAlerts = false;
|
|||
|
// app.Visible = false;
|
|||
|
// try
|
|||
|
// {
|
|||
|
// //Add workbook
|
|||
|
// Workbook theWorkbook = app.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
|
|||
|
// //Add worksheet
|
|||
|
// var theWorksheet =
|
|||
|
// (Worksheet)theWorkbook.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
// string sheetName = workSheetName;
|
|||
|
// if (workSheetName.Length > 31)
|
|||
|
// sheetName = workSheetName.Substring(0, 31);
|
|||
|
// theWorksheet.Name = sheetName;
|
|||
|
// app.SheetsInNewWorkbook = 1;
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
|
|||
|
// //Paste to the worksheet from clpboard
|
|||
|
// theWorksheet.Paste(Type.Missing, Type.Missing);
|
|||
|
// //Apply Borders
|
|||
|
// ApplyBorder(theWorksheet.UsedRange);
|
|||
|
|
|||
|
// //Auto Fit All columns
|
|||
|
// Range xlRange = theWorksheet.UsedRange;
|
|||
|
// // put all hardcodes in a constant class
|
|||
|
// xlRange.Font.Name = "Arial";
|
|||
|
// xlRange.Font.Size = 9;
|
|||
|
// var firstRowRange = (Range)xlRange.Rows[1, Missing.Value];
|
|||
|
// firstRowRange.EntireRow.Font.Bold = true;
|
|||
|
// firstRowRange.EntireRow.HorizontalAlignment = XlHAlign.xlHAlignCenter;
|
|||
|
// //Set Wrap Test to false
|
|||
|
// xlRange.WrapText = false;
|
|||
|
// object misValue = Missing.Value;
|
|||
|
// theWorksheet.ListObjects.Add(XlListObjectSourceType.xlSrcRange,
|
|||
|
// xlRange, misValue, XlYesNoGuess.xlYes, misValue).Name = "myTableList";
|
|||
|
// string tableStyleName = "TableStyle" + tableStyle;
|
|||
|
// theWorksheet.ListObjects["myTableList"].TableStyle = tableStyleName;
|
|||
|
// xlRange.Columns.AutoFit();
|
|||
|
// ((_Worksheet)theWorksheet).Activate();
|
|||
|
|
|||
|
// //Save the file
|
|||
|
// string xcelFile = Path.Combine(Path.GetTempPath(),
|
|||
|
// Path.GetFileNameWithoutExtension(fullFilePath) + ".xlsx");
|
|||
|
// theWorkbook.SaveAs(xcelFile, XlFileFormat.xlOpenXMLWorkbook, Type.Missing, Type.Missing,
|
|||
|
// Type.Missing, Type.Missing, XlSaveAsAccessMode.xlNoChange,
|
|||
|
// Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
|
|||
|
|
|||
|
// theWorksheet.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, fullFilePath,
|
|||
|
// XlFixedFormatQuality.xlQualityStandard, true, false, Missing.Value,
|
|||
|
// Missing.Value, toOpen, Missing.Value);
|
|||
|
|
|||
|
|
|||
|
// //Clean up
|
|||
|
// app.Quit();
|
|||
|
// Marshal.ReleaseComObject(app);
|
|||
|
// File.Delete(xcelFile);
|
|||
|
// }
|
|||
|
// catch
|
|||
|
// {
|
|||
|
// MessageBox.Show(
|
|||
|
// "Please add 2007 Microsoft Office Add-in: Microsoft Save as PDF or XPS , dowload it from this location http://www.microsoft.com/download/en/details.aspx?id=7",
|
|||
|
// "Error", MessageBoxButton.OK, MessageBoxImage.Error);
|
|||
|
// ForceExcelClose(excelProcessId);
|
|||
|
// throw;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// }
|
|||
|
|
|||
|
// public enum ExcelTableStyle
|
|||
|
// {
|
|||
|
// Light1,
|
|||
|
// Light2,
|
|||
|
// Light3,
|
|||
|
// Light4,
|
|||
|
// Light5,
|
|||
|
// Light6,
|
|||
|
// Light7,
|
|||
|
// Light8,
|
|||
|
// Light9,
|
|||
|
// Light10,
|
|||
|
// Light11,
|
|||
|
// Light12,
|
|||
|
// Light13,
|
|||
|
// Light14,
|
|||
|
// Light15,
|
|||
|
// Light16,
|
|||
|
// Light17,
|
|||
|
// Light18,
|
|||
|
// Light19,
|
|||
|
// Light20,
|
|||
|
// Light21,
|
|||
|
// Medium1,
|
|||
|
// Medium2,
|
|||
|
// Medium3,
|
|||
|
// Medium4,
|
|||
|
// Medium5,
|
|||
|
// Medium6,
|
|||
|
// Medium7,
|
|||
|
// Medium8,
|
|||
|
// Medium9,
|
|||
|
// Medium10,
|
|||
|
// Medium11,
|
|||
|
// Medium12,
|
|||
|
// Medium13,
|
|||
|
// Medium14,
|
|||
|
// Medium15,
|
|||
|
// Medium16,
|
|||
|
// Medium17,
|
|||
|
// Medium18,
|
|||
|
// Medium19,
|
|||
|
// Medium20,
|
|||
|
// Medium21,
|
|||
|
// Medium22,
|
|||
|
// Medium23,
|
|||
|
// Medium24,
|
|||
|
// Medium25,
|
|||
|
// Medium26,
|
|||
|
// Medium27,
|
|||
|
// Medium28,
|
|||
|
// Dark1,
|
|||
|
// Dark2,
|
|||
|
// Dark3,
|
|||
|
// Dark4,
|
|||
|
// Dark5,
|
|||
|
// Dark6,
|
|||
|
// Dark7,
|
|||
|
// Dark8,
|
|||
|
// Dark9,
|
|||
|
// Dark10,
|
|||
|
// Dark11,
|
|||
|
// }
|
|||
|
//}
|