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 ・・・新着記事一覧を見る

無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
累計を求める数式あれこれ|エクセル関数応用(2024-01-22)
複数の文字列を検索して置換するSUBSTITUTE|エクセル入門(2024-01-03)
いくつかの数式の計算中にリソース不足になりました。|エクセル雑感(2023-12-28)
VBAでクリップボードへ文字列を送信・取得する3つの方法|VBA技術解説(2023-12-07)
難しい数式とは何か?|エクセル雑感(2023-12-07)
スピらない スピル数式 スピらせる|エクセル雑感(2023-12-06)
イータ縮小ラムダ(eta reduced lambda)|エクセル入門(2023-11-20)
PIVOTBY関数(縦軸と横軸でグループ化して集計)|エクセル入門(2023-11-19)


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

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.変数宣言のDimとデータ型|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.並べ替え(Sort)|VBA入門
8.条件分岐(IF)|VBA入門
9.マクロとは?VBAとは?VBAでできること|VBA入門
10.セルのクリア(Clear,ClearContents)|VBA入門




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


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



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