Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
一些但并非所有Excel数字都显示为日期_Excel - Fatal编程技术网

一些但并非所有Excel数字都显示为日期

一些但并非所有Excel数字都显示为日期,excel,Excel,我有一个很大的.xls文件。有些数字显示为日期。 8月31日显示为8月31日 31.13显示为31.13(我希望所有列都是这样的) 当我将8月31日重新格式化为数字时,它显示为40768,00 我没有办法将8月31日转换为8月31日。我所能做的就是将8月31日重新格式化为d.mm,然后显示为31.08,当我尝试将其从31.08重新格式化为数字时,显示为40768,00。使用不同类型的单元格格式无法欺骗Excel。您的区域设置如何?有些地区的短日期由dd.mm.yyyy标识。(例如爱沙尼亚语)。如

我有一个很大的.xls文件。有些数字显示为日期。
8月31日显示为8月31日
31.13显示为31.13(我希望所有列都是这样的)
当我将8月31日重新格式化为数字时,它显示为40768,00
我没有办法将8月31日转换为8月31日。我所能做的就是将8月31日重新格式化为d.mm,然后显示为31.08,当我尝试将其从31.08重新格式化为数字时,显示为40768,00。使用不同类型的单元格格式无法欺骗Excel。

您的区域设置如何?有些地区的短日期由dd.mm.yyyy标识。(例如爱沙尼亚语)。如果您更改美国/英国的区域设置并再次粘贴数据,则不会更改


我在这里参加了一个小测验。希望有帮助。

Excel内部将日期存储为整数。1月1日是1月1日。1900如果您输入了Excel解释为日期的内容,则它将转换为整数。我认为从这一点上说,没有回头路了


“国际”选项卡上的“选项”中有一个设置,您可以在其中定义小数分隔符。如果将其设置为“”,则Excel应接受30.12作为十进制数字,而不是日期。

正如其他人所指出的,Excel将某些数据解释为日期而不是数字,这取决于您的区域设置。为了避免这种情况发生,请尝试Tiago和stema的回答,它们将根据您的区域设置发挥作用

要在问题发生后修复大文件中的问题,而无需重新输入/重新导入数据,可以使用以下方法

=DAY(B5)+MONTH(B5)/100
将“日期”转换回数字。当您第一次输入时,Excel仍将其显示为日期,但当您现在将其重新格式化为“数字”时,它将显示您最初输入的值

由于列似乎包含正确的数字和日期,因此需要添加if()构造来分隔这两种情况。如果您尚未更改显示格式(即仍显示8月31日),则可以使用

=IF(LEFT(CELL("format";B7);1)="D";DAY(B7)+MONTH(B7)/100;B7)
=IF(B5>40000;DAY(B5)+MONTH(B5)/100;B5)
检查格式是否为“D”ate格式。如果您已将格式更改为数字,但知道所有正确数据都低于40000,则可以使用

=IF(LEFT(CELL("format";B7);1)="D";DAY(B7)+MONTH(B7)/100;B7)
=IF(B5>40000;DAY(B5)+MONTH(B5)/100;B5)

如上所述,转到
控制面板-区域和语言-高级设置-数字-并将十进制符号从“,”更改为“,”

祝你好运

您正在粘贴的数据是否可能是透视表

例如,像你一样,我正在将大量数据复制到一个大型电子表格中。我复制的数据来自另一个工作表,它是一个透视表

如果我正常粘贴,一半将显示为数字,它们在源文件中,另一半将显示为日期,毫无原因,这让我发疯


但是,如果我粘贴->值,它们将全部显示为数字,并且由于我不需要目标文件中的pivot功能,因此此解决方案很好

您所要做的就是格式化单元格

在要插入数字的单元格上单击鼠标右键

2-然后单击数字并从数字菜单中选择“常规”


希望这将有助于未来有同样问题的人。

将格式更改为数字,然后输入31.08应该将其保留为该值的数字。数字不是默认格式吗?在输入数据之前,您是否对所有单元格应用了日期格式?@bdares:“在计算机时代,输入一个大的.xls文件并不总是一个好主意。”@重新更正:您可以将所有单元格重新格式化为d.mm,然后复制它们,然后在菜单中执行类似“粘贴特殊”的操作,然后仅选择文本。如果此文件有1000行显示为日期,但需要显示为数字,则无法在合理的时间内手动更改。即“粘贴特殊”这个把戏似乎也不管用。单元格显示的值为31.08,但功能栏显示的值为31.08.2011。因此,从内部来看,这31.08就是2011年8月31日。