diff --git a/src/HubCloud.BlazorSheet.EvalEngine/Engine/DependencyAnalyzer/SheetDependencyAnalyzer.cs b/src/HubCloud.BlazorSheet.EvalEngine/Engine/DependencyAnalyzer/SheetDependencyAnalyzer.cs index 2c66617..d8a23e7 100644 --- a/src/HubCloud.BlazorSheet.EvalEngine/Engine/DependencyAnalyzer/SheetDependencyAnalyzer.cs +++ b/src/HubCloud.BlazorSheet.EvalEngine/Engine/DependencyAnalyzer/SheetDependencyAnalyzer.cs @@ -113,9 +113,7 @@ public List OrderCellsForCalc2() return resultList; } - - #region private methods - private void CheckCircularCells(List sheetCells) + public void CheckCircularCells(List sheetCells) { var circularCells = new List(); foreach (var cell in sheetCells) @@ -140,6 +138,8 @@ private void CheckCircularCells(List sheetCells) } } + #region private methods + private string GetCircularCellsStr(List badCells) { var resultStr = string.Empty; diff --git a/src/HubCloud.BlazorSheet.EvalEngine/Engine/WorkbookEvaluator.cs b/src/HubCloud.BlazorSheet.EvalEngine/Engine/WorkbookEvaluator.cs index 15f1c87..8f8972f 100644 --- a/src/HubCloud.BlazorSheet.EvalEngine/Engine/WorkbookEvaluator.cs +++ b/src/HubCloud.BlazorSheet.EvalEngine/Engine/WorkbookEvaluator.cs @@ -104,6 +104,8 @@ private void EvalSheet(Sheet sheet, SheetData cells) var formulaCells = sheet.Cells .Where(x => IsFormula(x.Formula)) .ToList(); + + _analyzer.CheckCircularCells(formulaCells); // formulas without depend var endingFormulas = new List();