diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs index d0d535c..8c1471c 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs @@ -4,6 +4,7 @@ using System.Collections; using System.Collections.Generic; using System.Data; + using System.Globalization; using System.Linq; using System.Reflection; using System.Text; @@ -646,23 +647,10 @@ } else { - var formatCodes = GetFormatCodes(); if (_dataType == XLCellValues.Boolean) _cellValue = (_cellValue != "0").ToString(); else if (_dataType == XLCellValues.TimeSpan) - _cellValue = TimeSpan.Parse(_cellValue).ToString(); - else if (_dataType == XLCellValues.Number) - { - string format = Style.NumberFormat.NumberFormatId > 0 ? formatCodes[Style.NumberFormat.NumberFormatId] : Style.NumberFormat.Format; - - if (!StringExtensions.IsNullOrWhiteSpace(format) && format != "@") - _cellValue = Double.Parse(_cellValue).ToString(format); - } - else if (_dataType == XLCellValues.DateTime) - { - string format = Style.NumberFormat.NumberFormatId > 0 ? formatCodes[Style.NumberFormat.NumberFormatId] : Style.NumberFormat.Format; - _cellValue = DateTime.FromOADate(Double.Parse(_cellValue)).ToString(format); - } + _cellValue = BaseDate.Add(GetTimeSpan()).ToOADate().ToString(CultureInfo.InvariantCulture); } } diff --git a/ClosedXML/ClosedXML/ClosedXML_Examples/Loading/ChangingBasicTable.cs b/ClosedXML/ClosedXML/ClosedXML_Examples/Loading/ChangingBasicTable.cs index 5419cbe..32090ab 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Examples/Loading/ChangingBasicTable.cs +++ b/ClosedXML/ClosedXML/ClosedXML_Examples/Loading/ChangingBasicTable.cs @@ -27,8 +27,9 @@ var rngNumbers = ws.Range("F4:F6"); foreach (var cell in rngNumbers.Cells()) { + string formattedString = cell.GetFormattedString(); cell.DataType = XLCellValues.Text; - cell.Value += " Dollars"; + cell.Value = formattedString + " Dollars"; } ws.Columns().AdjustToContents(); diff --git a/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/DataTypes.xlsx b/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/DataTypes.xlsx index 0cef0e4..a6b3eda 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/DataTypes.xlsx +++ b/ClosedXML/ClosedXML/ClosedXML_Tests/Resource/Examples/Misc/DataTypes.xlsx Binary files differ