|
しんのすけさん。
こんにちは。
仕様を明確に、というのは、
A2に氏名があって、とか、具体的なことを差してください。
回答することはできるのですが、
仕様が不明確なせいで、コードが走らないというのが、
回答者としては悲しいことになるのです。
ひとまず、以下のコードを示します。
簡単に書きましたので、ヘルプとか見て、
そちらの状況なりに修正してください。
変数myFoには、ファイルがあるフォルダを設定してください。
ファイルがあるフォルダには、エクセルファイル以外入れないでください。
Sub フォルダの中のファイルの名前を取得()
Dim myFo As String
Dim fileStr As String
Dim myWs As Worksheet, myWb As Workbook
Dim dataWb As Workbook
Dim i As Integer
Set myWb = Workbooks.Add
Set myWs = myWb.ActiveSheet
myWs.Range("A1:D1") = Array("氏名", "項目2", "項目6", "項目7")
myFo = "D:\Ki" 'フォルダのパス
fileStr = Dir(myFo & "\", vbNormal)
i = 2
Do While fileStr <> ""
Set dataWb = Workbooks.Open(myFo & "\" & fileStr)
With dataWb.ActiveSheet
myWs.Range("A" & i).Value = .Range("A2").Value '氏名
myWs.Range("B" & i).Value = .Range("C2").Value '項目2
myWs.Range("C" & i).Value = .Range("C4").Value '項目6
myWs.Range("D" & i).Value = .Range("D4").Value '項目7
End With
i = i + 1
dataWb.Close
fileStr = Dir
Loop
End Sub
|
|