Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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_Vba_Date_Text_Format - Fatal编程技术网

Excel 快速将列字符串更改为日期

Excel 快速将列字符串更改为日期,excel,vba,date,text,format,Excel,Vba,Date,Text,Format,我有一列日期,我相信是文本格式的,例如。 2014年11月1日或2015年12月30日 我想把这些改变成一种格式,我可以在上面做一个vlookup 我有一些东西可以工作,但速度很慢(一分钟左右): lastRow在我的程序中的其他地方设置(典型值为2000)。有没有办法加快速度?另一种产生相同结果的方法 我正在设想一次更改整个列的方法,例如在此处完成:如果字符串是有效的(Excel可识别格式)日期,您可以尝试以下操作: With Range("A8:A" & lastrow) .

我有一列日期,我相信是文本格式的,例如。 2014年11月1日或2015年12月30日 我想把这些改变成一种格式,我可以在上面做一个vlookup

我有一些东西可以工作,但速度很慢(一分钟左右):

lastRow在我的程序中的其他地方设置(典型值为2000)。有没有办法加快速度?另一种产生相同结果的方法

我正在设想一次更改整个列的方法,例如在此处完成:

如果字符串是有效的(Excel可识别格式)日期,您可以尝试以下操作:

With Range("A8:A" & lastrow)
    .NumberFormat = "General"
    .Value = .Value
    .NumberFormat = "mm/d/yyyy"
End With
这完全基于您在问题中描述的场景。

作为答案发布,发布的链接没有讨论这种方法。HTH.

可能重复的可能重复的是!谢谢,行得通。我略微编辑为:With Range(“A8:A”&lastRow),因为我的数据是从第8行开始的。
With Range("A8:A" & lastrow)
    .NumberFormat = "General"
    .Value = .Value
    .NumberFormat = "mm/d/yyyy"
End With