diff --git a/cell/model/WorkbookElems.js b/cell/model/WorkbookElems.js index 03be2a95dc..fefcbb78b7 100644 --- a/cell/model/WorkbookElems.js +++ b/cell/model/WorkbookElems.js @@ -16372,7 +16372,11 @@ function RangeDataManagerElem(bbox, data) }); } + let cellType = cell.getType(); let newVal = noData ? "#REF!" : cell.getValue(); + if (cellType === CellValueType.Number) { + newVal = cell.getNumberValue(); + } if (this.CellValue !== newVal) { isChanged = true; this.CellValue = newVal; @@ -16380,13 +16384,22 @@ function RangeDataManagerElem(bbox, data) var cellValueType = null; - switch (cell.getType()) { + switch (cellType) { case CellValueType.String: cellValueType = Asc.ECellTypeType.celltypeStr; break; case CellValueType.Bool: cellValueType = Asc.ECellTypeType.celltypeBool; break; + case CellValueType.Number: + let cellFormat = cell.getNumFormat(); + let isDateTimeFormat = cellFormat && cellFormat.isDateTimeFormat() && cellFormat.getType() !== Asc.c_oAscNumFormatType.Time; + if (isDateTimeFormat) { + cellValueType = Asc.ECellTypeType.celltypeDate; + } else { + cellValueType = Asc.ECellTypeType.celltypeNumber; + } + break; case CellValueType.Error: cellValueType = Asc.ECellTypeType.celltypeError; break;