text: public void SetCellValue(double value){if(double.IsInfinity(value)){SetCellErrorValue(FormulaError.DIV0.Code);}else if (double.IsNaN(value)){SetCellErrorValue(FormulaError.NUM.Code);}else{int row = _record.Row;int col = _record.Column;short styleIndex = _record.XFIndex;switch (cellType){case CellType.Numeric:((NumberRecord)_record).Value = value;break;case CellType.Formula:((FormulaRecordAggregate)_record).SetCachedDoubleResult(value);break;default:SetCellType(CellType.Numeric, false, row, col, styleIndex);((NumberRecord)_record).Value = value;break;}}}