エクセル入門
VSTACK関数(配列を縦方向に順に追加・結合)

Excelの初心者向け入門解説
公開日:2022-10-25 最終更新日:2022-11-06

VSTACK関数(配列を縦方向に順に追加・結合)


VSTACK関数はOffice365のExcelに2022年になってから追加された新しい関数です。


配列を縦方向(垂直方向)に順番に追加し、1つの大きな配列を作成して返します。
VSTACK関数は各配列引数を行単位で上から順に(つまり下へ下へ)追加して新しい配列を作成します。
横方向(水平方向)に結合する場合はHSTACK関数を使用します。
・HSTACK関数の構文 ・HSTACKの基本動作 ・HSTACK関数の使用例と解説


VSTACK関数の構文

=VSTACK(配列1,[配列2],...)

配列1 配列またはセル範囲を指定します。
必須です。
配列2 配列またはセル範囲を指定します。
配列2以降は省略可能です。
※配列は全部で254個まで指定できます。(執筆時点で確認したものです)

VSTACK関数は、引数の各配列を行単位で縦方向(垂直方向)に順番に追加して形成された配列を返します。
引数の順番に従って上から順に(つまり下へ下へ)追加していきます。

結果の配列は次の次元になります。
行:各配列引数のすべての行の合計です。
列:各配列引数の列数の最大値。

各引数の配列の列数が最大列数より少ない場合、
不足している列は「#N/A」のエラー値で埋められます。
IFERROR関数内でVSTACKを使用することで、「#N/A」を任意の値に置き換えることができます。


VSTACKの基本動作

Excel エクセル VSTACK関数 配列操作関数

数式
=VSTACK(A1:C4, E1:G2)
解説
Excel エクセル VSTACK関数 配列操作関数

4行×3列の配列と、2行×3列の配列をVSTACKで縦に結合しています。
4行+2行=6行
最大列数=3列
結果は、6行×3列の配列となります。


VSTACK関数の使用例と解説

2つのセル範囲をVSTACKで縦に結合する

=VSTACK(A1:B4,D1:F2)
Excel エクセル VSTACK関数 配列操作関数

4行×2列の配列と、2行×3列の配列をVSTACKで縦に結合しています。
4行+2行=6行
最大列数=3列
結果は、6行×3列の配列となります。
そこで、4行×2列の配列は3列目の値がないので、その部分は「#N/A」で埋められます。

2つのセル範囲をVSTACKで縦に結合し、IFERRORで不足部分のエラーを解消

=IFERROR(VSTACK(A1:B4,D1:F2),"")
Excel エクセル VSTACK関数 配列操作関数

結果の6行×3列の配列に対して不足している部分の「#N/A」をIFERRORで""に置き換えています。

配列とセル範囲をVSTACKで縦に結合する

=VSTACK(SEQUENCE(2,3),A1:C1,SEQUENCE(3,3))
Excel エクセル VSTACK関数 配列操作関数

SEQUENCE関数で作成される数列配列とセル範囲をVSTACKで縦につなげています。
=SEQUENCE(2,3)
Excel エクセル VSTACK関数 配列操作関数
A1:C3
Excel エクセル VSTACK関数 配列操作関数
=SEQUENCE(3,3)
Excel エクセル VSTACK関数 配列操作関数

2つのテーブルをVSTACKで縦に結合してからユニーク化

=SORT(UNIQUE(VSTACK(tblA,tblB)))
Excel エクセル VSTACK関数 配列操作関数

「tblA」と「tblB」をVSTACKで順に縦につなげていきます。
そしてUNIQUE関数で重複をなくして一意(ユニーク)なデータを作成しています。

列全体を指定してVSTACKで縦に結合する場合

=UNIQUE(VSTACK(FILTER(A:C,A:A<>""),FILTER(E:G,E:E<>"")))
Excel エクセル VSTACK関数 配列操作関数

列全体(全行数)をVSTACKで結合することは出来ません。
そこで、FILTER関数でデータを絞ってから結合しています。
FILTER関数での絞り込みは、キーとなる列(必須入力列)を使います。


LAMBDA以降の新関数の問題集 ・・・ 解答は別ページになっています。

・目次 ・LAMBDA踊るぞ編 ・LAMBDA踊るぞ編2 ・SCAN編 ・MAP編 ・REDUCE編 ・山手線営業の旅編 ・BYROW,BYCOL編 ・ここからはフリー問題だよ編 ・好きな関数を使ってくれ編 ・いろんな関数を使ってね編 ・魔球編 ・豚が木に登れば落ちることもある編 ・たまには100点とってみたいものだ編 ・これは何と言う処理なんだろ編 ・数字は嫌いなのだ編 ・外堀から埋めていくぞ編 ・なぜわざわざそうしたいのか編 ・かっこつけてんじゃないよ編 ・頭の体操だけど新関数の出番はあるか?編 ・定番だけど出してなかったよね編
LAMBDA以降の新関数の使用例
・2つの1次元配列から、それをクロス結合した結果を返す ・A列が同じ行のB列の値を連結して、A列の一意な値とともに出力 ・名前定義を使わずにLAMBDA関数で再帰する方法 ・文字列を大文字小文字変換して大小文字の全組み合わせを出力 ・2つのテーブルの片方しかない行を縦に連結出力 ・3連単、3連複のフォーメーション買目を全て列挙する ・FILTER関数の出力行数・列数を指定する ・月が縦で日が横の表を、曜日(7列)で縦に折り返す ・文字列内の括弧()()の中の文字を取り出して列挙 ・表内にあるセル内改行を複数行に展開 ・文字列の中から1文字削除の全パターン出力 ・クロスABC分析 ・月利が毎月変動する月複利の計算 ・レーベンシュタイン距離 ・文字列を数字と数字以外で分割 ・縦横スピルしないXLOOKUP代替(MATCH+INDEX,FILTER,CHOOSEROWS) ・直積(クロス結合、…




同じテーマ「エクセル入門」の記事

BYCOL関数(配列の列単位にLAMBDAを適用し行を集約)
ISOMITTED関数(LAMBDAの引数省略の判定)
MAKEARRAY関数(行数・列数で計算した配列を作成)
VSTACK関数(配列を縦方向に順に追加・結合)
HSTACK関数(配列を横方向に順に追加・結合)
CHOOSEROWS関数(配列から複数の指定された行を返す)
CHOOSECOLS関数(配列から複数の指定された列を返す)
TOCOL関数(配列を縦1列の配列にして返す)
TOROW関数(配列を横1行の配列にして返す)
DROP関数(配列の先頭/末尾から指定行/列数を除外)
TAKE関数(配列の先頭/末尾から指定行/列数を取得)


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

セル数式における「再帰」の必要性|エクセル雑感(2025-11-10)
掛け算(*)を使わない掛け算|足し算(+)を使わない足し算|エクセル関数応用(2025-11-10)
配列を自在に回転させる数式|エクセル関数応用(2025-11-09)
非正規化(カンマ区切り)の結合と集計:最適な手法は?|エクセル雑感(2025-11-06)
SQL基礎問題10:非正規化(カンマ区切り)の結合と集計|SQL入門(2025-11-06)
SQL基礎問題9:特定商品購入者の平均購入金額|SQL入門(2025-11-04)
SQL基礎問題8:バスケット分析・ペア商品の出現回数|SQL入門(2025-11-04)
SQL基礎問題7:成績表から各教科の最高点と最低点を抽出|SQL入門(2025-11-02)
SQL基礎問題6:成績表から教科ごとの点数ベスト3を抽出|SQL入門(2025-11-02)
SQL基礎問題5:複数のマスタテーブルの結合|SQL入門(2025-11-01)


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

1.生成AIパスポート試験 練習問題(四肢択一式)|生成AI活用研究
2.最終行の取得(End,Rows.Count)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
5.繰り返し処理(For Next)|VBA入門
6.RangeとCellsの使い方|VBA入門
7.FILTER関数(範囲をフィルター処理)|エクセル入門
8.日本の祝日一覧|Excelリファレンス
9.マクロとは?VBAとは?VBAでできること|VBA入門
10.セルのクリア(Clear,ClearContents)|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」をお願いいたします。
本文下部へ