When the Workbook has more than one sheet a localSheetId should be exported:
<definedName name="xlnm.Print_Titles" localSheetId="0">Sheet1!$A$1</definedName>
localSheetId (from the OOXML specification): Specifies a boolean value that indicates whether the defined name is related to an external function, command, or other executable code.
When the spreadsheet contains empty rows and the format of some cells is set the rows are still exported to pdf or printed.
To workaround this set the print area with the following code:
IPropertyDefinition[] propertyDefinitionsAffectiingPringing = new IPropertyDefinition[] { CellPropertyDefinitions.ValueProperty };
CellRange usedCellRange = workbook.Worksheets[0].GetUsedCellRange(propertyDefinitionsAffectiingPringing);
workbook.Worksheets[0].WorksheetPageSetup.PrintArea.SetPrintArea(usedCellRange);
When a workbook (xlsx) contains a worksheet where some of the columns have width, bigger than the value written in the SpreadsheetDefaultValues (2000) an exception during the import is thrown.
At this point, only the styling is preserved without the hyperlink itself. Implement logic to add the hyperlink to the generated PDF document.
Workaround: check the attached project.
Add support for the EDATE function.
Use the attached custom function as a workaround.
The exception is thrown when importing a document that contains an empty stylesheet tag in its styles.xml part.
Add API for setting custom document properties (metadata). Such are visualized by the common editors, e.g. in MS Excel in the File menu. Example properties that can be set through the document properties are: - Title - Subject - Author - Keywords - Comments - Last Author - Creation Date - Category - Manager - Company