excel 中更改 TODAY() 的格式

Changing format of TODAY() in excel

我使用 today 来获取今天的日期,然后使用以下方法在它的末尾添加一个静态值:

=TODAY()&"T23:00:00"

哪个Returns43202T23:00:00

我真的需要 2018-04-12T23:00:00

格式

任何帮助都将非常有用!

有几种方法可以实现这一点,具体取决于您的目标是格式化字符串(用于显示)还是用于存储或用于计算的数值(例如数据类型 Date)。


如果您想要格式化 date/time 结果(显示给用户)...

Use the TEXT worksheet function:

=TEXT(TODAY(),"yyyy-mm-dd")&"T23:00:00"

...之所以有效,是因为 TODAY() return 是一种 Date 数据类型,它基本上只是一个代表 date/time 的数字,(其中 1 = January 1, 1900 的午夜,2 = January 2, 1900 的午夜,2.5 = January 2, 1900 的中午,等等)。

您可以使用 TEXT 函数将日期类型转换为字符串(文本),格式任意。上面的示例将今天的日期显示为 2018-04-12.

例如,如果您希望字符串的日期部分显示为April 12, 2018,那么您可以使用:

TEXT(TODAY(),"mmmm d, yyyy")

注意TEXT工作表函数(和VBA的Format函数)总是return字符串,就绪与您要添加的字符串的其余部分连接 ("T23:00:00").


如果您想在计算中使用结果...

如果您希望结果为 Date 类型,则不要 concatenating string(由 TEXT 函数生成)到 string(来自 "T23:00:00"),您可以改为 add a 日期日期:

=TODAY()+TIME(23,0,0)

=TODAY()+TIMEVALUE("23:00")

..然后您可以根据需要使用数字格式(快捷键:Ctrl+ 显示或隐藏 Y/M/D/H/M/S 来格式化它1).


更多信息: