前提
Unixtimeがファイル名になっているファイルに対して、
そのファイル名に基づいて最終更新日時を設定したいです。
何がダメなのかさっぱり分かりません…何かヒントだけでもいただけませんか。
発生している問題・エラーメッセージ
該当のソースコード
VBS
1Option Explicit 2 3Dim fso,folder,file,unixTime,jst,oShell,oFolder,oFolderItem,fileName 4Set fso = CreateObject("Scripting.FileSystemObject") 5Set folder = fso.GetFolder(".\") 6Set oShell = CreateObject("Shell.Application") 7Set oFolder = oShell.Namespace(folder) 8 9For Each file In folder.Files 10 11 'ファイル名がUnixtimeになっているものだけを対象に実施 12 if( Left(file.Name, 2) = "16" ) then 13 14 'ファイル名から、撮影日時を取得 15 fileName = file.Name 16 unixTime = Left(fso.GetBaseName(fileName),10) 17 jst = DateAdd("h", 9, DateAdd("s", unixTime, DateSerial(1970, 1, 1))) 18 19 '更新日時の変更 20 msgbox fileName 21 Set oFolderItem = oFolder.ParseName(fileName) 22 oFolderItem.ModifyDate = jst 23 24 end if 25Next 26 27Set fso = Nothing
補足情報(FW/ツールのバージョンなど)
エラー発生個所の21行目は
Set oFolderItem = oFolder.ParseName(fileName)
の部分です。

回答2件
あなたの回答
tips
プレビュー