VSTACK関数の使い方|複数の表や範囲を縦につなげる
※写真はイメージです
書き方
=VSTACK(配列1, 配列2 …)いくつかの範囲を縦に積み重ねて1つの表にします。月ごとのシートに分かれた明細を1つにまとめるときに便利です。結果は下へ自動で広がります(スピル)。
この図の表をExcelファイルでダウンロード(問題と答えのシートつき)
引数の意味
| 引数 | 入れるもの | 図の例 |
|---|---|---|
| 配列1 | 1つ目の範囲 | A2:A3 |
| 配列2 … | 下につなげる範囲 | C2:C3 |
シートごとの表を1つにまとめる
=VSTACK('4月'!A2:C50,'5月'!A2:C50,'6月'!A2:C50)月ごとのシートの明細を縦に並べます。空白行もつながってしまうので、=FILTER(VSTACK(…),INDEX(VSTACK(…),,1)<>"") のように FILTER で空白を除くときれいになります。
うまくいかないとき
1#SPILL! になる
結果が広がる先のセルに何か入っています。
直し方下のセルを空けます。
使えるバージョン
Microsoft 365とExcel 2024で使えます。Excel 2021以前では使えません。Googleスプレッドシートでも使えます({A2:A3;C2:C3} の書き方も同じ意味です)。
サンプルファイルで試す
「問題」のシートの黄色いセルに式を入れて、「答え」のシートと比べてください。
よくある質問
横につなげるには?
HSTACKを使います。
一緒に覚えたい関数・操作
このページについて
操作の説明は Microsoft 365 の日本語版Excel(Windows)に合わせています。図はこのサイトで作ったもので、表の会社名・商品名・人名は架空です。運営者情報