Excel VBAで前月の月数を取得してその月のフォルダの中のファイルを、方法はありますか?

Excel VBAで前月の月数を取得してその月のフォルダの中のファイルを、方法はありますか? 例えば、2020年の9月に作業をするという場合、”202008”という文字列がフォルダ名に入っているフォルダの中のファイルを開きたいです。 日付はフォルダ名には入れておらず、年月だけです。 2021年になると、202101とかになるので、その辺も対応させたいです。 よろしくお願いします。

Visual Basic | Excel42閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

そのフォルダにあるファイル、全部開くんです?(´・ω・) Sub test() Dim pt As String, fld As String 'パス pt = "D:\Sample\" 'フォルダ存在確認 fld = Dir(pt & Format(DateSerial(Year(Date), Month(Date) - 1, 1), "yyyymm") & "*", vbDirectory) If fld = "" Then MsgBox "フォルダが見つかりませんでした。" Exit Sub End If 'ファイル存在確認 Dim f As String f = Dir(pt & fld & "\*.xls*") If f = "" Then MsgBox "ファイルが見つかりませんでした。" Exit Sub End If '全部開く Do While f <> "" Workbooks.Open pt & fld & "\" & f f = Dir() Loop End Sub

素早い回答ありがとうございます。 すみません、すべては開きません! 特定のファイル一つのみですが、ファイルの名前は毎月分決まっているものの、そのファイルにも末尾に年月がついてます。 【例】ABCDE_202008.CSV こういう形です。

ThanksImg質問者からのお礼コメント

ありがとうございました

お礼日時:9/13 23:10