private void ParseValueItem(ValuesBunch valueItems, string type, IXLCell currentValueCell, ref int lastRowNum) { while (currentValueCell.IsEmpty() == false) { if (DateTime.TryParse(currentValueCell.CachedValue.ToString(), out var d)) { return; } if (decimal.TryParse(currentValueCell.CachedValue?.ToString(), out var num)) { try { var value = new ValueItem(num, new StatEnumItem(type)); valueItems.Add(value); } catch { continue; } } lastRowNum = Math.Max(lastRowNum, currentValueCell.Address.RowNumber); currentValueCell = currentValueCell.CellBelow(); } }