【发布时间】:2020-08-06 09:25:40
【问题描述】:
我想从我使用下面的代码打开的每日文件名中提取日期。我每天打开的文件格式都是相同的格式,只是日期会更改以反映文件生成的日期。如何在VBA中编写以提取我打开的最新文件中的日期然后粘贴到文件中的单元格“A2”中?
例如,下面的代码将根据文件名“CCONTACT_Daily_WIP_CCONTACTCase_20200805_0203.csv”的最新修改日期打开最新的 csv 文件。我只想从打开的文件名中提取日期“20200805”。文件名始终相同,只是日期会更改。如何提取该日期并粘贴到单元格中?
Dim MyPathWIP As String
Dim MyFileWIP As String
Dim LatestFileWIP As String
Dim LatestDateWIP As Date
Dim LMDWIP As Date
Dim wip1 As Excel.Workbook
'Open latest file from WIP folder
MyPathWIP = "D:\Regina\Case360 reporting automation\Daily Report WIP Testing\"
If Right(MyPathWIP, 1) <> "\" Then MyPathWIP = MyPathWIP & "\"
MyFileWIP = Dir(MyPathWIP & "*.csv", vbNormal)
If Len(MyFileWIP) = 0 Then
MsgBox "No files were found...", vbExclamation
Exit Sub
End If
Do While Len(MyFileWIP) > 0
LMDWIP = FileDateTime(MyPathWIP & MyFileWIP)
If LMDWIP > LatestDateWIP Then
LatestFileWIP = MyFileWIP
LatestDateWIP = LMDWIP
End If
MyFileWIP = Dir
Loop
Set wip1 = Workbooks.Open(MyPathWIP & LatestFileWIP)
【问题讨论】: