Skip to content

ParsingException: Excel file with conditinal formating Specific Text containing a star '*' #2690

@tgd-nti

Description

@tgd-nti

Bug Excel file with conditinal formating Specific Text containing a star '*'

When opening and saving an excel file with conditonal formating using ClosedXML after version 97, including
newest prerelease the save is aborted by exception

ClosedXML.Parser.ParsingException: 'Unable to determine token for '~*' at index 0.'

Conditional formating in Excel

Only format Cells that contains specific text containing ~*

Exception

ClosedXML.Parser.ParsingException: 'Unable to determine token for '~*' at index 0.'

   at ClosedXML.Parser.FormulaParser`3.Formula()
   at ClosedXML.Parser.FormulaParser`3.CellFormulaA1(String formula, TContext context, IAstFactory`3 factory)
   at ClosedXML.Parser.FormulaConverter.ToR1C1(String formulaA1, Int32 row, Int32 col)
   at ClosedXML.Excel.XLCellFormula.GetFormula(String strValue, FormulaConversionType conversionType, XLSheetPoint cellAddress) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\Cells\XLCellFormula.cs:line 141
   at ClosedXML.Excel.XLCell.GetFormulaR1C1(String value) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\Cells\XLCell.cs:line 1333
   at ClosedXML.Excel.XLConditionalFormat.AdjustFormulas(XLCell baseCell, XLCell targetCell) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\ConditionalFormats\XLConditionalFormat.cs:line 103
   at ClosedXML.Excel.XLConditionalFormats.Consolidate() in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\ConditionalFormats\XLConditionalFormats.cs:line 118
   at ClosedXML.Excel.IO.WorksheetPartWriter.GetWorksheetDom(Boolean partIsEmpty, WorksheetPart worksheetPart, XLWorksheet xlWorksheet, SaveOptions options, SaveContext context) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\IO\WorksheetPartWriter.cs:line 53
   at ClosedXML.Excel.IO.WorksheetPartWriter.GenerateWorksheetPartContent(Boolean partIsEmpty, WorksheetPart worksheetPart, XLWorksheet xlWorksheet, SaveOptions options, SaveContext context) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\IO\WorksheetPartWriter.cs:line 40
   at ClosedXML.Excel.XLWorkbook.CreateParts(SpreadsheetDocument document, SaveOptions options) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\XLWorkbook_Save.cs:line 303
   at ClosedXML.Excel.XLWorkbook.CreatePackage(String filePath, SpreadsheetDocumentType spreadsheetDocumentType, SaveOptions options) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\XLWorkbook_Save.cs:line 64
   at ClosedXML.Excel.XLWorkbook.SaveAs(String file, SaveOptions options) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\XLWorkbook.cs:line 468
   at ClosedXML.Excel.XLWorkbook.SaveAs(String file, Boolean validate, Boolean evaluateFormulae) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\XLWorkbook.cs:line 438
   at ClosedXML.Excel.XLWorkbook.SaveAs(String file) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML\Excel\XLWorkbook.cs:line 427
   at ClosedXML.Sandbox.Program.TestFile_ButtonWithMacros() in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML.Sandbox\Program.cs:line 50
   at ClosedXML.Sandbox.Program.Main(String[] args) in D:\Filez\kode\GitHub\ToolsFromGitHub\ClosedXML\ClosedXML.Sandbox\Program.cs:line 15

Test program

public void Main(string[] args)
{
    using var wb = new XLWorkbook("testCondFormat.xlsx");
    wb.SaveAs("NewtestCondFormat.xlsx");
}

Image

Image

testCondFormat.xlsx

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions