我的日期在"yyyy.mm.dd"格式文本,我想把它们转换成日期。
这个代码可以工作:
x = "2012.01.01"
d = DateSerial(Left(x, 4), Mid(x, 6, 2), Right(x, 2))
但是有没有更简单的方法呢?
我认为这将工作(这应该是直接的),但它没有:
d = Format(x, "yyyy.mm.dd")
对于您的具体示例,请尝试以下操作:
d= Replace(x, ".", "/")
d= Format(CDate(d),"yyyy/mm/dd"))
转换为Date的实际函数:
CDate(d)
从:https://www.techonthenet.com/excel/formulas/cdate.php
所以总结一下:CDATE是转换为Date的实际方法Microsoft Excel CDATE函数将值转换为日期。
CDATE函数是Excel中内置的分类函数作为数据类型转换函数。它可以用作VBA函数(VBA)在Excel中。作为VBA函数,您可以在宏中使用该函数通过Microsoft Visual Basic编辑器输入的代码。
该格式用于执行字符串格式化-但实际的转换是用CDATE
完成的。
Format用于将日期值格式化为文本,而不是转换为日期值。因此:
Dim d As Date
x = "2012.01.01"
d = CDate(Replace(x, ".", "/"))
然后将日期格式应用于要显示这些值的单元格。