我有一個數據表(計算結果),用戶應該能夠導出到不同的格式。我使用Interop.Excel
來準備一個包含數據的表格,並使用數據並使用視覺格式(字體,顏色等)和NumberFormat
對其進行格式化。例如:問題與NumberFormat在ExportAsFixedFormat
cellRange.NumberFormat = "#,##0";
當我表保存爲的Excel文件導出到的.xlsx和的.xls當所有的格式就可以了:
excelWorkBook.SaveAs(exportFileName, Excel.XlFileFormat.xlOpenXMLWorkbook); // for .xlsx
excelWorkBook.SaveAs(exportFileName, Excel.XlFileFormat.xlExcel8); // for .xls
我也想給用戶可以將該表格導出到.pdf和.xps從應用程序,而不必打開Excel文件。正如我已經準備在Interop.Excel
表,我試圖出口同桌的文件格式:
excelWorkBook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF,exportFileName); // for .pdf
excelWorkBook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypeXPS,exportFileName); // for .xps
的這兩種結果的不同之處在於所有NumberFormats
丟失導致雙打的長十進制值好文件。這不適合客戶對數據的總結。 (顏色和字體保持爲在定義.PDF和.XPS。)
我試圖設置.Style
和.Styles
到"Number"
或類似物。這並不能解決問題。
我也試圖保護Range
的細胞或excelWorkSheet
。這也不能解決問題。
有人建議調用VBA宏/子通過C#但一些尋找到這後,我得到的印象是,它不是一個非常簡單的(或穩定的)路徑。
我正在找尋通過Interop.Excel
或以其他方式解決此問題的任何幫助。
LUCN