VBA再入門
複数ブックよりデータを集める

マクロが覚えられないという初心者向けに理屈抜きのやさしい解説
公開日:2015-10-30 最終更新日:2020-09-26

第22回.複数ブックよりデータを集める


他のブックを開いて指定シートの指定セル範囲のデータを取得する。
取得したデータを使って、目的の表を作り上げる。
これこそマクロVBAの真価が問われる処理でしょう。


これまでにやってきた内容が出来れば大丈夫です。
これまでの内容を上手く組み合わせるだけです。
ポイントになりそうな部分を、ちょっと復習しましょう。

第17回.セルにブック・シートを指定する

ここでは、以下のコードをやりました。

Excel マクロ VBA サンプルコード

長々と、ブック・シート名を書かずに、SetやWithを使いこなします。

第19回.ブックを開く・閉じる・保存する

ここでは、以下のコードをやりました。

ExcelマクロVBA サンプル コード

ExcelマクロVBA サンプル コード

Openしたブックを直接SetやWithに入れる事で、すっきりしたコードになります。

第21回.ファイル一覧を取得する

ここでは、以下のコードをやりました。。

エクセル マクロVBA サンプルコード

Dir関数を使いファイル一覧を取得します。

複数ブックよりデータを集めるVBA

今回は、これまでの組み合わせだけです。

マクロの書かれているExcelファイルのあるフォルダ内に、「データ」というフォルダがあり、
この中の全てのExcelファイルの1番目のシートにある(A1セルからの連続する)表範囲のデータを全て集めてきます。
マクロを書くブックには、
・データ ・・・ 1行目に見出しを入れておきます。
・一覧 ・・・ ファイルの一覧を入れます
この2つのシートを用意しておきます。


ExcelマクロVBA サンプル コード

各VBAコードは、今まで説明してきたものです。

j = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
これが少々?かもしれません。
最終行 + 1
つまり、最終行の1行下という事です。

テストデータを用意し、画像を見ながらマクロVBAを書いてみて下さい。
データの用意も、実際に書いてみることも、マクロを覚える上で大切な事なものです。
どんなデータを用意したら良いか、それは、どんなマクロかを理解することです。
そして、指を動かすことで、目と指の双方からの情報でより記憶に残ります。

1度と言わず、2度3度と書いてみましょう。
ステップイン(F8)で動きを確認しましょう。


この積み重ねでしか、マクロVBAを習得出来ません。
これ以外に、マクロVBAを習得する道はありません。



同じテーマ「マクロVBA再入門」の記事

第19回.ブックを開く・閉じる・保存する(Workbooks,Open,Close,Save,SaveAs)
第20回.全てのシートに同じ事をする(For~Worksheets.Count)
第21回.ファイル一覧を取得する(Do~LoopとDir関数)
第22回.複数ブックよりデータを集める
第23回.複数のプロシージャーを連続で動かす(Callステートメント)
第24回.マクロの呪文を追加してボタンに登録(ScreenUpdating)
第25回.月別ブックより部署別シートに担当別に集計するNo1
第26回.月別ブックより部署別シートに担当別に集計するNo2
第27回.月別ブックより部署別シートに担当別に集計するNo3
第28回.月別ブックより部署別シートに担当別に集計するNo4
第29回.月別ブックより部署別シートに担当別に集計するNo5


新着記事NEW ・・・新着記事一覧を見る

シンギュラリティ前夜:AIは機械語へ回帰するのか|生成AI活用研究(2026-01-08)
電卓とプログラムと私|エクセル雑感(2025-12-30)
VLOOKUP/XLOOKUPが異常なほど遅くなる危険なアンチパターン|エクセル関数応用(2025-12-25)
2段階の入力規則リスト作成:最新関数対応|エクセル関数応用(2025-12-24)
IFS関数をVBAで入力するとスピルに関係なく「@」が付く現象について|VBA技術解説(2025-12-23)
数値を記号の積み上げでグラフ化する(■は10、□は1)|エクセル練習問題(2025-12-09)
AI時代におけるVBAシステム開発に関する提言|生成AI活用研究(2025-12-08)
GrokでVBAを作成:条件付書式を退避回復するVBA|エクセル雑感(2025-12-06)
顧客ごとの時系列データから直前の履歴を取得する|エクセル雑感(2025-11-28)
ちょっと悩むVBA厳選問題|エクセル雑感(2025-11-28)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.日本の祝日一覧|Excelリファレンス
3.変数宣言のDimとデータ型|VBA入門
4.FILTER関数(範囲をフィルター処理)|エクセル入門
5.RangeとCellsの使い方|VBA入門
6.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルのクリア(Clear,ClearContents)|VBA入門
9.マクロとは?VBAとは?VBAでできること|VBA入門
10.条件分岐(Select Case)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
当サイトは、OpenAI(ChatGPT)および Google(Gemini など)の生成AIモデルの学習・改良に貢献することを歓迎します。
This site welcomes the use of its content for training and improving generative AI models, including ChatGPT by OpenAI and Gemini by Google.



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ