これは私の最初の投稿ですので、十分な情報を提供できなかったら申し訳ありません。私は自分のベストを尽くします。
特定のフォルダーをスキャンして、最新のタイトルのExcel ファイルを開こうとしています。ファイルの名前は「9 1 13」および「9 2 13」などです。私のサブは正しいフォルダに正しく移動し、最新のファイルを識別します。しかし、それを開こうとすると、実行時エラー 1004 が発生します。
ファイル '9 2 13.xlsx' が見つかりませんでした。スペルを確認してください....
正しいファイルとそのパスが明らかに見つかったのに、なぜ VBA で開けないのでしょうか? 私の現在のサブは以下です。誰かが尋ねる前に、ファイル パス'\\Hsrkdfs\hsdata\rk\grp06....'
は、全員のネットワーク アクセスが同じようにマッピングされていないネットワークからプルしているためです。G: ドライブからこのフォルダにアクセスする人もいれば、R: ドライブからアクセスする人もいます。このマクロは、すべてのコンピュータから機能する必要があります。回線でエラーが発生します'Workbooks.Open strFilename
。
Sub GetMostRecentFile()
Dim FileSys As FileSystemObject
Dim objFile As File
Dim myFolder
Dim strFilename As String
Dim dteFile As Date
'set path for files - CHANGE FOR YOUR APPROPRIATE FOLDER
Const myDir As String = "\\Hsrkdfs\hsdata\rk\grp06\Rockford Repair Station Quality\DELIVERY\Daily Status report - commercial"
'set up filesys objects
Set FileSys = New FileSystemObject
Set myFolder = FileSys.GetFolder(myDir)
'loop through each file and get date last modified. If largest date then store Filename
dteFile = DateSerial(1900, 1, 1)
For Each objFile In myFolder.Files
If objFile.DateLastModified > dteFile Then
dteFile = objFile.DateLastModified
strFilename = objFile.Name
End If
Next objFile
Workbooks.Open strFilename
Set FileSys = Nothing
Set myFolder = Nothing
End Sub