我希望你能提供帮助。我有一个Excel VBA宏,可以自动将CSV保存为XLSM文件。但是,当它这样做时,它会将CSV中的日期格式更改为默认的本地UK设置。我需要它不要这样做并保持原始日期格式。
CSV文件中的原始日期格式为mm / dd / yyyy,我需要以XLSM格式维护它。目前,宏允许Excel将格式更改为dd / mm / yyyy(英国本地设置)。
以CSV格式为例:
05/24/2017,2,3,email@email.com
在保存的XLSM文件中变为以下内容:
24/05/2017 2 3 email@email.com
这是我的代码:
Private Sub Workbook_Open()
Dim wb As Workbook
Dim strFile As String, strDir As String
strDir = "C:\Processing\"
strFile = Dir(strDir & "*.csv")
Set wb = Workbooks.Open(strDir & strFile)
With wb
.SaveAs Replace(wb.FullName, ".csv", ".xlsm"), 52 'UPDATE:
.Close True
End With
Set wb = Nothing
Application.Quit
End Sub
代码中使用了通配符,因为文件的名称是可更改的。
希望你能提供帮助。