Unplanned
Last Updated: 06 Feb 2026 05:33 by Kevin Robertson
ADMIN
Created by: Tanya
Comments: 4
Category: SpreadProcessing
Type: Feature Request
12

Provide the ability to work with images in headers/footers of a worksheet. Note that large images put in headers are visualized as watermarks on printing/exporting to PDF.

Watermark in Excel: https://support.office.com/en-us/article/add-a-watermark-in-excel-a372182a-d733-484e-825c-18ddf3edf009

 

Unplanned
Last Updated: 03 Feb 2026 15:35 by ADMIN
ADMIN
Created by: Deyan
Comments: 6
Category: SpreadProcessing
Type: Feature Request
10
Currently, the numbers in a CSV file are parsed as numbers, and the leading zeros are lost. In MS Excel, leading zeros could be preserved when the values are imported as text using the more sophisticated text import wizard (http://www.upenn.edu/computing/da/bo/webi/qna/iv_csvLeadingZeros.html ).

Workaround: The values could be extracted using a third-party (or custom) CSV parser, and inserted manually into the model, using CellSelection.SetValueAsText method (http://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/working-with-cells/cell-value-types.html ).
In Development
Last Updated: 30 Jan 2026 07:53 by ADMIN

LocalizableException is thrown after removing columns from a workbook with set Print Titles.

Workaround - Remove the PrintTitles before removing the columns:

WorksheetPageSetup pageSetup = workbook.ActiveWorksheet.WorksheetPageSetup;
pageSetup.PrintTitles.RepeatedRows = null;
pageSetup.PrintTitles.RepeatedColumns = null;

 

Completed
Last Updated: 26 Jan 2026 14:29 by ADMIN
If the conditional formatting is missing, the copy operation is executed with no errors.
Unplanned
Last Updated: 14 Jan 2026 12:42 by Eric Moreau
XlsFormatProvider: NullReferenceException is thrown when importing a document that references an external workbook with an invalid or missing sheet name (#REF!)
Unplanned
Last Updated: 13 Jan 2026 07:58 by Eric Moreau

An error occurs while importing an XLSX document with charts. Here is the stack trace:

   at Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.Contexts.XlsxWorkbookImportContext.PairSeriesGroupsWithAxes()
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.Chart.PlotAreaElement.CopyPropertiesTo(IOpenXmlImportContext context, DocumentChart chart)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.Chart.ChartElement.CopyPropertiesTo(IOpenXmlImportContext context, DocumentChart chart)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.Chart.ChartSpaceElement.OnAfterRead(IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.OpenXmlElementBase.Read(IOpenXmlReader reader, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Parts.ChartPart.Import(IOpenXmlReader reader, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Parts.OpenXmlPartBase.Import(Stream stream, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.OpenXmlImporter`1.ImportPartFromArchive(ZipArchiveEntry zipEntry, PartBase part, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.OpenXmlImporter`1.Import(Stream input, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.XlsxFormatProvider.ImportOverride(Stream input, CancellationToken cancellationToken)
   at Telerik.Windows.Documents.Spreadsheet.FormatProviders.WorkbookFormatProviderBase.Import(Stream input, Nullable`1 timeout)

Unplanned
Last Updated: 13 Jan 2026 07:19 by Eric Moreau
Created by: Eric Moreau
Comments: 0
Category: SpreadProcessing
Type: Feature Request
1
RadPdfProcessing already offers exception handling mechanism which allows you to handle unexpected behavior during import/export. Thus, the import/export process skips the problematic part and continues the execution. This would be a great addition to the SpreadProcessing model as well. 
Unplanned
Last Updated: 12 Jan 2026 15:27 by ADMIN
ADMIN
Created by: Deyan
Comments: 12
Category: SpreadProcessing
Type: Feature Request
39
Add support for pivot tables.
Unplanned
Last Updated: 12 Jan 2026 06:56 by Eric Moreau
Created by: Eric Moreau
Comments: 0
Category: SpreadProcessing
Type: Feature Request
1

Currently, RadSpreadProcessing supports the following options:

namespace Telerik.Windows.Documents.Model.Drawing.Charts
{
    /// <summary>
    /// Specifies where a chart legend is placed relative to the plot area.
    /// </summary>
    public enum LegendPosition
    {
        /// <summary>
        /// Positions the legend to the right of the plot area.
        /// </summary>
        Right,

        /// <summary>
        /// Positions the legend below the plot area.
        /// </summary>
        Bottom,

        /// <summary>
        /// Positions the legend to the left of the plot area.
        /// </summary>
        Left,

        /// <summary>
        /// Positions the legend above the plot area.
        /// </summary>
        Top
    }
}

MS Excel supports setting "Top Right" Legend Position:

Unplanned
Last Updated: 09 Jan 2026 05:47 by Eric Moreau

Currently, if you have a decimal column in the DataTable, it is imported as a text column in the workbook. It should be preserved as a numeric column after importing.

Note: When importing a DataTable, each of the column's type is checked and a respective cell type is imported. 

 if (dataType.IsValueType && dataType.IsPrimitive && !dataType.IsEnum)
                    {
                        newValue = new NumberCellValue(Convert.ToDouble(value));
                    }
The check ensures only “simple” CLR value types are treated as numbers when importing from DataTable to the worksheet.

IsValueType: filters out reference types.

IsPrimitive: narrows to CLR primitives (sbyte, byte, short, ushort, int, uint, long, ulong, float, double, char, IntPtr, UIntPtr, bool).

!IsEnum: excludes enums.

In this code path, primitives are interpreted as numeric and converted to a Double for NumberCellValue. This avoids trying to numeric-convert arbitrary structs (e.g., guid, TimeSpan, custom structs), which should not be treated as numbers.

Decimal is not primitive, so it falls back to text, losing numeric semantics. This is the reason for the observed behavior.
Unplanned
Last Updated: 26 Nov 2025 12:41 by ADMIN
Opening a file where there is a format string with modificator [Color11] causes an ArgumentException "Invalid modificator" This prevents the file from opening.
Unplanned
Last Updated: 17 Nov 2025 16:05 by Bart
Unable to obtain cached formula values for formulas whose expressions contain named ranges.
Completed
Last Updated: 12 Nov 2025 11:41 by ADMIN
Release 2025.4.1104 (2025 Q4)
ConditionalFormattingRange' s Formattings collection is not correctly enumerated when there are rules with intermittent ranges.
Unplanned
Last Updated: 11 Nov 2025 11:45 by Martin Ivanov
Currently, you cannot sort filtered cell ranges that contain merged cells. This is supported in Excel.
Unplanned
Last Updated: 04 Nov 2025 09:29 by EUNKYUNG
Created by: EUNKYUNG
Comments: 0
Category: SpreadProcessing
Type: Feature Request
1
XlsFormatProvider: Add support for hidden rows.
Completed
Last Updated: 10 Oct 2025 06:11 by ADMIN
Release 2025.3.1007 (2025 Q3)
Stacktrace: 
   at System.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
   at System.Collections.Generic.Dictionary`2.FindValue(TKey key)
   at System.Collections.Generic.Dictionary`2.ContainsKey(TKey key)
   at Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.Model.Elements.Worksheets.ConditionalFormattingRuleElementX14.OnAfterRead(IXlsxWorksheetImportContext context) in C:\Work\document-processing\Documents\Spreadsheet\FormatProviders\OpenXml\Xlsx\Model\Elements\Worksheets\ConditionalFormatting\x14\ConditionalFormattingRuleElementX14.cs:line 62
Completed
Last Updated: 29 Sep 2025 14:22 by ADMIN
Release 2025.2.520 (2025 Q2)
This is a sample code to replicate the error which is triggered on export: 
            string inputFileName = "input.xlsx";
            if (!File.Exists(inputFileName))
            {
                throw new FileNotFoundException(String.Format("File {0} was not found!", inputFileName));
            }

            Telerik.Windows.Documents.Spreadsheet.Model.Workbook workbook;
            IWorkbookFormatProvider formatProvider = new Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.XlsxFormatProvider();

            using (Stream input = new FileStream(inputFileName, FileMode.Open))
            { 
                workbook = formatProvider.Import(input, TimeSpan.MaxValue);
            }
            string outputFilePath = "output.xlsx";

            using (Stream output = new FileStream(outputFilePath, FileMode.Create))
            {
                formatProvider.Export(workbook, output, TimeSpan.MaxValue);
            }
            Process.Start(new ProcessStartInfo() { FileName = outputFilePath, UseShellExecute = true });
Unplanned
Last Updated: 23 Sep 2025 11:05 by Sandy
Setting transparency to a chart series color results in a corrupted document.
Unplanned
Last Updated: 12 Sep 2025 13:15 by Martin Ivanov
When the columns are using widths with too precise decimal values (ex: 150.33333333333334), the VisibleRange of ViewportPane reports wrong range in some situations. 

This causes issues when calculating element positions in a custom WorksheetUILayerBase in the context of RadSpreadsheet for WPF.
Unplanned
Last Updated: 10 Sep 2025 12:38 by Giuseppe
Created by: Giuseppe
Comments: 0
Category: SpreadProcessing
Type: Feature Request
0
Add support for the FILTER function.
1 2 3 4 5 6