The named ranges need to be translated when used in a certain cell just like the data validation rules. WORKAROUND: When you use RowSelection.Insert() method, for instance, after the row insertion you may iterate all defined names in the document. Parse their RefersTo property and if it is affected by the insertion, delete and recreate the DefinedName in the corresponding NameCollection by updating the RefersTo text value. Sample code for parsing the RefersTo property may be seen in the description of this feedback item: https://feedback.telerik.com/Project/184/Feedback/Details/190061-spreadprocessing-add-api-to-get-the-list-of-ranges-to-which-a-defined-name-refer
If Spreadsheet's history is not enabled, merged cells cannot be unmerged. Workaround: Enable the History before calling Unmerge(): workbook.History.IsEnabled = true; worksheet.Cells[0, 0, 0, 4].Unmerge(); workbook.History.IsEnabled = false;
Allow to password-protect a workbook, so that it cannot be shown (read) without the password.
LayoutHelper is not calculating Height properly in net standard.
Workaround: use SpreadFixedTextMeasurer
Implement functionality to rotate the content of a cell.
Provide the following options for the image:
When a worksheet has a function of the type "=Indirect("A1")" and the value in A1 is edited, the result of the function is not updated. This, however, happens only after the file is imported. If the function is created through code or SetValueAsFormula is called after import, the function works as expected.
Workaround:
CellRange usedCellRange = worksheet.UsedCellRange;
for (int row = 0; row < usedCellRange.RowCount; row++)
{
for (int column = 0; column < usedCellRange.ColumnCount; column++)
{
ICellValue cellValue = worksheet.Cells[row, column].GetValue().Value;
if (cellValue.ValueType == CellValueType.Formula)
{
worksheet.Cells[row, column].SetValue(cellValue);
}
}
}
When autofit is applied on a button with a filter, the button width is not taken into account and it overlaps the text.
Expected:
Actual:
SpreadProcessing: InvalidOperationException when opening an XLS document with a named range that refers to a formula. The message is "Only applicable to named ranges". Opened correctly in Excel.
Parsing a document that contains a cell with wrapped multiline text and its row doesn't define a value for height, results in wrong row height when rendering or exporting to PDF.
Workaround: Fit the height of the row when it contains wrapped cells:
Worksheet worksheet = workbook.ActiveWorksheet;
CellRange wrappedCells = worksheet.GetUsedCellRange(CellPropertyDefinitions.IsWrappedProperty);
for (int i = wrappedCells.FromIndex.RowIndex; i < wrappedCells.ToIndex.RowIndex; i++)
{
worksheet.Rows[i].AutoFitHeight();
}
Add support for manual calculation option, which allows not to recalculate all the formulas on value change, but on manual request. MS Excel supports this feature in Formulas -> Calculation -> Calculation Options, with the following options: Automatic, Automatic Except for Data Tables, Manual.