【发布时间】:2021-10-23 04:33:54
【问题描述】:
我想打开共享文件夹中的最新文件。
我有一个代码可以检查笔记本电脑文件夹中的文件,例如“下载”,但我必须在共享驱动器中打开一个文件夹,然后复制此工作簿的信息并粘贴到另一个文件中。
'Force the explicit declaration of variables
Option Explicit
Sub OpenLatestFile()
'Declare the variables
Dim MyPath As String
Dim MyFile As String
Dim LatestFile As String
Dim LatestDate As Date
Dim LMD As Date
'Specify the path to the folder
MyPath = "P:\GTS\zdss\"
'Make sure that the path ends in a backslash
If Right(MyPath, 1) <> "\" Then MyPath = MyPath & "\"
'Get the first Excel file from the folder
MyFile = Dir(MyPath & "*.xls", vbNormal)
'If no files were found, exit the sub
If Len(MyFile) = 0 Then
MsgBox "No files were found...", vbExclamation
Exit Sub
End If
'Loop through each Excel file in the folder
Do While Len(MyFile) > 0
'Assign the date/time of the current file to a variable
LMD = FileDateTime(MyPath & MyFile)
'If the date/time of the current file is greater than the latest
'recorded date, assign its filename and date/time to variables
If LMD > LatestDate Then
LatestFile = MyFile
LatestDate = LMD
End If
'Get the next Excel file from the folder
MyFile = Dir
Loop
'Open the latest file
Workbooks.Open MyPath & LatestFile
End Sub
【问题讨论】:
-
FileDateTime即使在共享位置也必须返回正确的日期。你测试过它返回什么吗?Debug.Print LMD。如果它按预期返回,则可能必须检查并调整默认日期配置...