[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『複数のBookのデータを新たなBookの一つのSheetにまとめたい』(さくら)
目的 アイテム別に評価をするためのフォームをExcelで作成し、複数の人の回答を一つのSheetに統合したい。
フォームの例はこんな感じです。 アイテム3のように、回答のないアイテムもあり得ます。
観点A 観点B 観点C
アイテム1 3 5 4
アイテム2 2 1 3
アイテム3
アイテム4 2 3 4
Sheet名はすべて同じ「Sheet1」、行タイトル(アイテム名)、列タイトル(評価の観点)もすべて同じです。評価の数字だけがBookによって変わります。 集めたBookを、専用の一つのフォルダに保管しようと思っています。よって、Book毎にファイル名は異なります。ファイル名を指定して統合するのではなく、同じフォルダ内のすべてのBookを自動的に統合したいです。また、一つ一つのBookを手作業で開くのも避けたいです。とにかくファイル数が多い予定なので。。。 “統合”と言っているのは、次のように一つのSheetにレコード(行)をまとめるという意味です。
観点A 観点B 観点C
アイテム1 3 5 4
アイテム2 2 1 3
アイテム3
アイテム4 2 3 4
アイテム1 4 4 4
アイテム2 3 3 4
アイテム3 2 3 4
アイテム4 4 5 2
最終的にはアイテム毎、観点毎の平均値を集計することが目的です。
アドバイスお願いします!
こんな感じでどうでしょう?
Sub test()
Dim myDir As string, fn As String, myAddress As String
myDir = "c:\test" '<- フォルダパス指定
myAddress = "A2:D5" '<- 抽出範囲指定
fn = Dir(myDir & "\*.xls")
Do While fn <> ""
With Range(myAddress)
ThisWorkbook.Sheets(1).Range("a" & Rows.Count).End(xlUp)(2) _
.Resize(.Rows.Count, .Columns.Count).Formula = _
"='" & myDir & "\[" & fn & "]sheet1'!" & .Cells(1).Address(0,0)
End With
fn = Dir
Loop
End Sub
(seiya)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.