格式化列中从日期到文本的所有单元格

时间:2013-02-14 10:17:20

标签: excel office-2013

我有一个大约500行的Excel文档。 我需要格式化所有单元格,比如说,从日期到文本的B列。

这就是现在的样子:

2012-06-15
2012-06-01
2012-06-14

格式化为文本时的样子:

41075
41061
41074

据我所知,这是一个时间戳,表示自1900年1月1日以来的几天,对吧?无论如何,这不是我想要的。我希望字段的值与字段的值完全相同,但是使用列的文本类型。我已经使用这样的函数找到了各种解决方案:=TEXT(B1, "yyyy-mm-dd")但是没有重新格式化单元格,它从一个单元格中提取一个值,重新格式化它并在另一个单元格中表示为文本。

我遵守的规则:I want all cells in B column to have the type text without changing the value

谢谢!

3 个答案:

答案 0 :(得分:2)

如果您的列AD的日期为500行,那么您可以:

  1. 使用您在单元格=TEXT(A1, "yyyy-mm-dd")中描述的E1功能。

  2. 将此公式复制为4列宽,500行。

  3. 然后将复制并粘贴到前面的单元格中。

  4. 复制示例:

    Copy

    <强>输出:

    Output

答案 1 :(得分:1)

你是对的,Excel将日期内部存储为自1900年1月1日以来的天数(除了小的闰年错误)。

因此,我担心你不能同时拥有两者:

  • 要么保留这个值,例如(41075)并将格式作为日期,因此它会显示为2012-06-15 -
  • 或者您将其转换为文本格式 - 但是您也可以
    • 丢失基础值 - 如果您使用文本函数将其转换为您希望的格式
    • 保留值(41075),但看不到日期

答案 2 :(得分:1)

如果您输入值,可以在值之前添加'以将其保留为文本。

e.g。

Example Output

但是根据第三方服务用来导入这些值的方法,这可能不起作用,我打赌你不会解决它,除非你把它导出到文本编辑器并再次导入它。

尝试使用不同类型的文字为您的第三方服务,例如"2012-06-15",因为有些人会看到引号并删除它们。