ID非公開

2022/5/6 7:49

22回答

VBAで以下のことをやりたいです。 B列にセルに入力されているフォルダ名とC列に入力されているファイル名からそのエクセルデータを検索し、セルに入力されている情報をD列~G列へ書き出したい。

画像

Excel | Visual Basic310閲覧xmlns="http://www.w3.org/2000/svg">500

ベストアンサー

0
ID非公開

質問者2022/5/7 4:21

コピペするだけで、望んだものができました。 ありがとうございます。

その他の回答(1件)

0

Sub Example() Dim i As Long For i = 4 To Cells(Rows.Count, "B").End(xlUp).Row Dim フォルダー$, ファイル名$ フォルダー = Cells(1, "B") & Cells(i, "B") & "\" ファイル名 = Cells(i, "C") & ".xlsx" If Dir(フォルダー & "\" & ファイル名) <> "" Then Dim 参照先$ 参照先 = "'" & フォルダー & "[" & ファイル名 & "]Sheet1'" Cells(i, "D") = ExecuteExcel4Macro(参照先 & "!R1C1") Cells(i, "E") = ExecuteExcel4Macro(参照先 & "!R5C2") Cells(i, "F") = ExecuteExcel4Macro(参照先 & "!R4C4") End If Next End Sub

>ファイル名 = Cells(i, "C") & ".xlsx" C列のファイル名に拡張子が含まれておらず、どのブックも拡張子が.xlsx であることが前提