ExcelVBAで選択したシートのみのデータを1つのシートにまとめる
この記事では当方が実際に相談いただいた内容をまとめております。
選択したシートのみ1つのシートにまとめたいという方向けの記事です。
目次
ExcelVBAで選択したシートのみのデータを1つのシートにまとめる方法
実際にご相談いただいた内容は下記になります。
「数値データ以外の文字列や日付を含むデータ件数1〜15行の仕入れスケジュール一覧が物品種類ごとに30シートほどあるのですが、これを1つの一覧表にまとめる方法」を教えて欲しい。
統合機能は試してみましたが、日付などが足し算されるのとアウトラインが邪魔で使いにくく(最終的に予定日付で昇順に並べ替えたい)断念しましたとのことでした。
「空白行を無視しつつ、30シート分のデータを常に一覧表示する方法はありませんか?」とご相談いただきました。
Excelの操作だと時間がかかってしまう、Excelの機能でやろうとしてみたけどできないという場合はExcelVBAで自動化すると時間短縮できます。
事前準備として下記のExcelファイルを用意しましょう。

Sheet1

Sheet2

Sheet3

Sheet4

AllData
選択したシートのみを統合して1つのシートにまとめるコードの作成

「開発」タブをクリック
「Visual Basic」をクリック
「ExcelVBAで選択したシートのみを統合して1つのシートにまとめるコード」の入力
選択したシートのみを統合して1つのシートにまとめるコードの解説
まずは選択したシートのみを統合して1つのシートにまとめる際にどんな処理を実装しないといけないかを紙に書き出してみましょう。
今回のコードの処理の流れは下記になります。
- 選択されている集約用シートの2行目以降にデータが入っていれば2行目以降のデータを削除
- 各シートの2行目以降のデータを集約用シートの末尾にコピーして値貼り付け
- 空白行を削除する
※空白行を削除するコードについては別の記事で解説いたします。
選択したシートのみのデータを1つのシートにまとめるマクロをショートカットキーに割り当て
手順については「【ExcelVBA】特定のセルが見えるようにスクロールさせる」の記事の「マクロにショートカットキーの割り当て」を参照ください。
ショートカットキーで選択したシートのみのデータを1つのシートにまとめるマクロの実行
手順については「【ExcelVBA】特定のセルが見えるようにスクロールさせる」の記事の「ショートカットキーでマクロを実行する」を参照ください。
結論(まとめ)
「ExcelVBAで選択したシートのみのデータを1つのシートにまとめる方法」を解説しました。
- 選択したシートのみのデータを1つのシートにまとめるコードの作成
- 選択したシートのみのデータを1つのシートにまとめるマクロをショートカットキーに割り当て
- ショートカットキーで選択したシートのみのデータを1つのシートにまとめるマクロの実行
mouri49
最新記事 by mouri49 (全て見る)
- 初心者向け:HeartMuLa導入から生成まで - 2026年2月14日
- プロが教えるmanus漫画プロンプト最適化7選 - 2026年2月7日
- 【完全版】Google AI Studioの使い方:Gemini 1.5/2.0で音声処理・文字起こしを自動化する最強ガイド - 2026年1月31日


