✏️ 初めに
「複数の表をひとつにまとめたい…」
「縦にズラーっと並べたいだけなのに、コピペがめんどい!」
そんなExcelユーザーの悩みを一発で解決してくれるのが、VSTACK関数 / HSTACK関数です。
これらの関数を使えば、複数の表やリストを縦方向または横方向にスマートに結合可能!しかも行数・列数がバラバラでもOKという、まさにデータ整理の革命児的関数。
この記事では基本の使い方から、FILTERやUNIQUEと組み合わせた実用テクまで、実務で“映える”使い方をご紹介していきます。
🛠️基本構文と活用例
1. 基本:VSTACK / HSTACKとは?
Excel 365/2021以降に搭載された新関数です。
関数 | 方向 | 説明 |
---|---|---|
VSTACK | 縦 | 複数の範囲・値を縦方向に結合する |
HSTACK | 横 | 複数の範囲・値を横方向に結合する |
たとえば、こんな表が2つあるとします:
A列 | B列 |
---|---|
商品A | 100 |
商品B | 200 |
A列 | B列 |
---|---|
商品C | 150 |
商品D | 300 |
これらを縦にまとめたいときは、以下のように書きます。
=VSTACK(A1:B2, A4:B5)
すると、下記のようにひとつの表に自動結合されます:
A列 | B列 |
---|---|
商品A | 100 |
商品B | 200 |
商品C | 150 |
商品D | 300 |
💡ポイント
- 表のサイズが違ってもOK(足りない部分は自動で空白に)
- コピー不要!元の表が更新されれば、自動反映!
2. HSTACKで横並びに!
HSTACK
は横方向に並べたいときに使います。たとえば以下の2列:
名前リストA:A1:A3
名前リストB:B1:B3
これらを左右に並べたいときは、
=HSTACK(A1:A3, B1:B3)
で、一発横並びに変換できます。
3. FILTER関数と組み合わせて「条件別のリストを縦にまとめる」
VSTACKの真骨頂は動的な範囲を結合できること。
たとえば「営業部」と「技術部」の社員名を、それぞれ条件抽出して、ひとつにまとめたい場合:
=VSTACK(
FILTER(A2:B100, B2:B100="営業部"),
FILTER(A2:B100, B2:B100="技術部")
)
💡このように、FILTERで抽出した結果をVSTACKでつなげることで、動的なリストもスマートに統合できます!
4. UNIQUE+VSTACK:重複なしのリストをまとめて表示
例えば、複数の列にわたって部署名が散らばっている場合:
部署A:A列
部署B:B列
この2列のすべての部署を重複なく表示したいなら:
=UNIQUE(VSTACK(A2:A100, B2:B100))
→ 2列を縦に合体してからUNIQUEで重複排除という使い方!
5. 行数・列数が異なるときも安心!
VSTACKやHSTACKは、対象範囲のサイズが違っても、エラーになりません。
たとえば:
- A1:A3(3行)
- B1:B2(2行)
これを VSTACK(A1:A3, B1:B2)
とすると、足りない行(B列3行目)は自動的に空白として処理されます。整形の自由度が高いのも魅力です。
6. ちょっと便利な見た目調整テク(Tips)
- 列名を先頭に追加したい時
=VSTACK({"名前","売上"}, A2:B100)
→ {"名前","売上"}
で文字列の見出しを手動で設定可能!
- セルに値を入力して、検索結果を動的に変えたい
A1に検索キーワードを入れて、次のように書けば:
=FILTER(A2:B100, B2:B100=A1)
→ VSTACK
やHSTACK
と組み合わせれば、検索結果をまとめて表示も可能!
🧩 まとめ
VSTACK
は縦に、HSTACK
は横にデータを自動結合- 行数・列数が違ってもOK!元表の変化もリアルタイム反映
FILTER
やUNIQUE
と組み合わせれば、「条件抽出 → 一括表示」が爆速でできる- 表の整形・集計が爆速&正確に!
🗣️ さいごに
VSTACK/HSTACKは、一見シンプルながら、実務の中で“何度も使いたくなる”万能関数。特に、「複数表をひとつにまとめたい」「条件ごとの結果を並べて見たい」という場面では強烈な威力を発揮します。
あなたはどんな場面で表の結合に困ったことがありますか?
「こんな使い方もあるよ!」というアイデアがあれば、ぜひコメントで教えてくださいね!
コメント