当我打开一个普通的新 Excel 工作表 (2016) 时,将单元格类型更改为数字并输入数字1.25
,它会将输入的数字更改为值。当我输入或时,43125,00
我会得到类似的结果,但如果我输入则不会得到结果- 它会被视为文本或至少是无法解析为数字的东西。1.01
1.9
1.99
我明白我必须使用,
才能正确输入数字。
我的问题是,当我输入1.25
数字时会发生什么?为什么我会得到43125,00
?
答案1
对于您的区域设置,,
是小数分隔符,因此您需要使用它来输入数字。如果您使用句点,则输入将被解释为数字以外的内容;具体是什么取决于内容。
如果您输入的内容可能是有效日期,则句点将被解释为日期分隔符。Excel 认为 1.25 是一个日期(2018 年 1 月 25 日),其内部表示为 43125(自 1900 年 1 月 0 日以来的天数)。
由于您将单元格格式化为数字而不是日期,因此您看到的是日期的数字表示。默认小数位设置为两位,末尾为零。“125”模式在表示该日期的天数中重复出现纯属巧合。
1.01 和 1.9 都可以是日期,因此它们会发生相同的情况。但 1.99 不能是日期,因此输入的文字值将存储为文本。
答案2
读完评论后,我意识到问题背后的机制比我想象的要复杂得多。首先,小数分隔符是逗号而不是句号。其次,Excel 将输入值归类为“日期”值,但使用“数字”格式表示它。
解决发布问题的一个方法是更改小数分隔符,这可以通过 Excel 完成。Options -> Advanced -> Editing options -> Decimal separator
如果修复了这个问题,Excel 就不会将输入值归类为“日期”值。
我不会立即考虑小数点分隔符,因为谁会使用逗号作为小数点分隔符呢?然而,有趣而令人惊讶的是,世界上有一半的人实际上都在使用它(https://en.wikipedia.org/wiki/Decimal_separator)。
但是,我确实将 识别43125
为数字形式的“日期”值。如果我们去掉小数分隔符的问题,一个类似的例子是1-25
,Excel 会将其解释为“日期”值,并在“数字”格式下给出45658.00
。更令人困惑的是,Excel 允许自定义格式,因此“日期”值可以显示为1.25
或1,25
或任何其他形式。
我在电子表格中使用了很多“日期”值进行计算,它们可能很烦人。有时当我重新打开这些电子表格时,Excel(或 Openoffice)会认为它们更了解情况,并会毫无理由地自动将这些日期列从“日期”格式转换为“数字”格式。在这种情况下,将right-click mouse -> Format Cells -> Number
单元格/列重置为正确的格式将恢复数据。