Excel 将日期从年月日HH:mm:SS更改为年月日

Excel 将日期从年月日HH:mm:SS更改为年月日,excel,vba,Excel,Vba,我在将日期从dd-mm-yyyy HH:mm:SS更改为dd/mm/yyyy时遇到问题,并非所有日期都更改为正确的格式 我的问题的一个例子 Column E 03-10-2019 36:12:50 10/03/2010 10/03/2010 10/03/2010 03-10-2019 我为它的邻居使用的代码是: With ActiveSheet.UsedRange.Columns("D").Cells .TextToColumns Destination:=.Cells(1), DataTyp

我在将日期从dd-mm-yyyy HH:mm:SS更改为dd/mm/yyyy时遇到问题,并非所有日期都更改为正确的格式

我的问题的一个例子

Column E
03-10-2019 36:12:50
10/03/2010
10/03/2010
10/03/2010
03-10-2019
我为它的邻居使用的代码是:

With ActiveSheet.UsedRange.Columns("D").Cells
.TextToColumns Destination:=.Cells(1), DataType:=xlFixedWidth, FieldInfo:=Array(0, xlYMDFormat)
.NumberFormat = "dd/mm/yyyy" 
End With
D列中的所有日期都更改为dd/mm/yyyy

这是我用来从.txt文件复制数据的代码

myBook = ActiveWorkbook.Name
Set nav = CreateObject("shell.application")
folder = nav.browseforfolder(0, "PICK FOLDER", 0, "c:\").items.Item.Path
ChDir folder & "\"
file = Dir("*.txt")
Do While file <> ""

Workbooks.OpenText file, origin:=xlWindows, startrow:=1, DataType:=xlDelimited, FieldInfo:=Array(Array(1, xlTextFormat), Array(2, xlTextFormat), Array(3, xlTextFormat), Array(4, xlTextFormat), Array(5, xlTextFormat), Array(6, xlTextFormat), Array(7, xlTextFormat), Array(8, xlTextFormat), Array(9, xlTextFormat), Array(10, xlTextFormat))
myBook=ActiveWorkbook.Name
Set nav=CreateObject(“shell.application”)
folder=nav.browseforfolder(0,“拾取文件夹”,0,“c:\”)。items.Item.Path
ChDir文件夹&“\”
file=Dir(“*.txt”)
文件“”时执行此操作
Workbooks.OpenText文件,源:=xlWindows,startrow:=1,数据类型:=xlDelimited,字段信息:=Array(数组(1,xlTextFormat),Array(2,xlTextFormat),Array(3,xlTextFormat),Array(4,xlTextFormat),Array(5,xlTextFormat),Array(6,xlTextFormat),Array(7,xlTextFormat),Array(8,xlTextFormat),Array(9,xlTextFormat),Array(10,xlTextFormat))

使用宏记录器时会得到什么代码?范围(“E2:E138”)。选择Selection.NumberFormat=“m/d/yyyy”@rosssymonds如果您使用代码范围(“E2:E”和单元格(rows.count,5.end(xlUp).row)。NumberFormat=“dd/mm/yyyy”某些日期更改,其他日期保留为dd-mm-yyyyyy hh:mm:ss,我从.txt文件复制此数据,因为我试图自动生成报告,所以在将数据复制/粘贴到excel@rosssymondsy之前,我将所有单元格设置为文本。您的数据输入方法导致了您的问题。您应该导入数据,而不是从文本文件复制数据。导入时,指定文本文件中使用的日期格式。然后,您的日期将成为“真实”Excel日期,您可以使用cell.numberformat属性更改Excel中的格式。