<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>配列記法 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/%e9%85%8d%e5%88%97%e8%a8%98%e6%b3%95/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 15:44:56 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>配列記法 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのHSTACK関数の使い方｜表を横に結合</title>
		<link>https://mashukabu.com/spreadsheet-hstack-function/</link>
					<comments>https://mashukabu.com/spreadsheet-hstack-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:34:51 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[HSTACK関数]]></category>
		<category><![CDATA[VSTACK関数]]></category>
		<category><![CDATA[横方向に結合]]></category>
		<category><![CDATA[配列操作]]></category>
		<category><![CDATA[配列記法]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4853</guid>

					<description><![CDATA[スプレッドシートのHSTACK関数で複数の表を横方向に結合する方法を解説。基本構文から実務活用パターン、VSTACK関数や中カッコ配列記法との違いまで、わかりやすく紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで、別々の表を横方向にくっつけたいことってありますよね。社員名簿の横に評価データを並べたり、商品リストに在庫数を追加したり。手作業でコピーすると、行がズレたりデータ更新のたびにやり直しになったりで大変です。</p>



<p class="wp-block-paragraph">HSTACK関数を使えば、複数の表を数式ひとつで横方向に結合できます。元データが更新されれば結合結果も自動で反映されるので、メンテナンスの手間もかかりません。</p>



<p class="wp-block-paragraph">この記事では、HSTACK関数の基本から、VSTACK関数や中カッコ配列記法との違いまでわかりやすく解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのHSTACK関数とは？</a><ol><li><a href="#toc2" tabindex="0">HSTACK関数の基本構文</a></li><li><a href="#toc3" tabindex="0">行数が異なる表を結合した場合</a></li></ol></li><li><a href="#toc4" tabindex="0">HSTACK関数の基本的な使い方</a><ol><li><a href="#toc5" tabindex="0">サンプルデータ</a></li><li><a href="#toc6" tabindex="0">2つの表を横に結合する</a></li><li><a href="#toc7" tabindex="0">3つ以上の表を結合する</a></li></ol></li><li><a href="#toc8" tabindex="0">HSTACK関数の実務活用パターン</a><ol><li><a href="#toc9" tabindex="0">パターン1: FILTER関数と組み合わせて絞り込む</a></li><li><a href="#toc10" tabindex="0">パターン2: SORT関数と組み合わせて並べ替える</a></li><li><a href="#toc11" tabindex="0">パターン3: ARRAYFORMULA関数で列を追加する</a></li><li><a href="#toc12" tabindex="0">パターン4: 別シートの表を結合する</a></li><li><a href="#toc13" tabindex="0">パターン5: UNIQUE関数で重複なし結合リストを作る</a></li></ol></li><li><a href="#toc14" tabindex="0">VSTACK関数との違い・使い分け</a></li><li><a href="#toc15" tabindex="0">中カッコ{配列}記法との違い・使い分け</a><ol><li><a href="#toc16" tabindex="0">中カッコ配列記法とは</a></li><li><a href="#toc17" tabindex="0">HSTACK関数と配列記法の比較</a></li></ol></li><li><a href="#toc18" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc19" tabindex="0">まとめ</a><ol><li><a href="#toc20" tabindex="0">この記事で紹介した関数・関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのHSTACK関数とは？</span></h2>



<p class="wp-block-paragraph">HSTACK関数（読み方: エイチスタック関数）は、複数の配列やセル範囲を<strong>横方向（水平方向）に結合</strong>する関数です。「H」はHorizontal（水平）、「STACK」は積み重ねるという意味で、表を横に積み重ねるイメージです。</p>



<p class="wp-block-paragraph">たとえば、3列の社員名簿と2列の評価テーブルを結合して、5列の一覧表を作れます。元データと数式でつながっているため、元データを変更すれば結合結果も自動で更新されますよ。</p>



<p class="wp-block-paragraph">HSTACK関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>複数の表やセル範囲を横方向に結合する</li><li>引数を追加するだけで3つ以上の表もまとめて結合できる</li><li>行数が異なる表を結合した場合、不足行は自動で補完される</li><li>FILTER関数やSORT関数と組み合わせて結合後のデータを加工できる</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>HSTACK関数はGoogleスプレッドシート独自の関数ではなく、ExcelのMicrosoft 365やExcel 2024でも使用できます。ただし、Excel 2021以前のバージョンでは使えません。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc2">HSTACK関数の基本構文</span></h3>



<pre class="wp-block-code"><code>=HSTACK(配列1, [配列2], ...)</code></pre>



<p class="wp-block-paragraph">カッコの中に、横方向に結合したい範囲を順番に指定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>配列1</td><td>必須</td><td>結合する最初のセル範囲または配列</td></tr><tr><td>配列2以降</td><td>任意</td><td>追加で結合するセル範囲または配列（最大254個）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">結合したい表をカンマ区切りで並べるだけのシンプルな構文です。引数は最大254個まで指定できますが、実務では2〜4個程度を使うことがほとんどですよ。</p>



<h3 class="wp-block-heading"><span id="toc3">行数が異なる表を結合した場合</span></h3>



<p class="wp-block-paragraph">HSTACK関数では、結合する表の行数が異なっても結合自体は成功します。ただし、行数が少ない側の不足分は<strong>#N/Aエラー</strong>で自動的に埋められます。</p>



<p class="wp-block-paragraph">たとえば、3行の表と5行の表を結合すると、3行の表側の4〜5行目に#N/Aが入ります。この#N/Aを消したい場合は、IFERROR関数で囲みましょう。</p>



<pre class="wp-block-code"><code>=IFERROR(HSTACK(A1:B3, D1:E5), &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">これで#N/Aの部分が空白に置き換わります。行数が異なる表を扱うときは、セットで覚えておいてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc4">HSTACK関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">ここでは、社員データを使ってHSTACK関数の基本操作を紹介します。</p>



<h3 class="wp-block-heading"><span id="toc5">サンプルデータ</span></h3>



<p class="wp-block-paragraph">A1:C4に社員名簿、E1:F4に評価テーブルが入っているとします。</p>



<p class="wp-block-paragraph">社員名簿（A1:C4）:</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>1</td><td>社員番号</td><td>氏名</td><td>部署</td></tr><tr><td>2</td><td>001</td><td>佐藤</td><td>営業</td></tr><tr><td>3</td><td>002</td><td>田中</td><td>経理</td></tr><tr><td>4</td><td>003</td><td>鈴木</td><td>総務</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">評価テーブル（E1:F4）:</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>E</th><th>F</th></tr></thead><tbody><tr><td>1</td><td>評価</td><td>前年比</td></tr><tr><td>2</td><td>A</td><td>120%</td></tr><tr><td>3</td><td>B</td><td>95%</td></tr><tr><td>4</td><td>A</td><td>110%</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc6">2つの表を横に結合する</span></h3>



<p class="wp-block-paragraph">出力先のセル（たとえばH1）に以下の数式を入力して、Enterを押します。</p>



<pre class="wp-block-code"><code>=HSTACK(A1:C4, E1:F4)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>H</th><th>I</th><th>J</th><th>K</th><th>L</th></tr></thead><tbody><tr><td>1</td><td>社員番号</td><td>氏名</td><td>部署</td><td>評価</td><td>前年比</td></tr><tr><td>2</td><td>001</td><td>佐藤</td><td>営業</td><td>A</td><td>120%</td></tr><tr><td>3</td><td>002</td><td>田中</td><td>経理</td><td>B</td><td>95%</td></tr><tr><td>4</td><td>003</td><td>鈴木</td><td>総務</td><td>A</td><td>110%</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">社員名簿の右側に評価テーブルがきれいに結合されました。1つの数式を入力するだけで、5列分のデータがスピルで自動展開されます。</p>



<h3 class="wp-block-heading"><span id="toc7">3つ以上の表を結合する</span></h3>



<p class="wp-block-paragraph">結合する表が3つ以上ある場合も、カンマで区切って引数を追加するだけです。</p>



<pre class="wp-block-code"><code>=HSTACK(A1:C4, E1:F4, H1:H4)</code></pre>



<p class="wp-block-paragraph">社員名簿・評価テーブル・備考列の3つを一気に結合できます。データソースが増えても数式に追加するだけなので、管理がラクですよ。</p>



<h2 class="wp-block-heading"><span id="toc8">HSTACK関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc9">パターン1: FILTER関数と組み合わせて絞り込む</span></h3>



<p class="wp-block-paragraph">複数の表を結合した後、条件に合うデータだけ抽出したいことがありますよね。<a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>と組み合わせましょう。</p>



<pre class="wp-block-code"><code>=FILTER(HSTACK(A2:C4, E2:F4), E2:E4=&quot;A&quot;)</code></pre>



<p class="wp-block-paragraph">HSTACKで結合した表に対して、評価が「A」のデータだけを抽出しています。FILTER関数の条件には、元のセル範囲（E2:E4）を指定するのがポイントです。</p>



<h3 class="wp-block-heading"><span id="toc10">パターン2: SORT関数と組み合わせて並べ替える</span></h3>



<p class="wp-block-paragraph">結合したデータを特定の列で並べ替えたい場合は、<a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>が便利です。</p>



<pre class="wp-block-code"><code>=SORT(HSTACK(A2:C4, E2:F4), 5, FALSE)</code></pre>



<p class="wp-block-paragraph">第2引数の「5」は結合後の5列目（前年比）を基準にソートします。第3引数のFALSEは降順です。結合と並べ替えが1つの数式で完結しますよ。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン3: ARRAYFORMULA関数で列を追加する</span></h3>



<p class="wp-block-paragraph">既存のデータに計算列を横に追加するパターンです。</p>



<pre class="wp-block-code"><code>=HSTACK(A1:C4, ARRAYFORMULA(IF(ROW(A1:A4)=1, &quot;税込&quot;, B2:B4*1.1)))</code></pre>



<p class="wp-block-paragraph">元データの右側に、<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>で計算した「税込」列を追加しています。ヘッダー行にはIF関数で見出しテキストを入れるのがコツです。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン4: 別シートの表を結合する</span></h3>



<p class="wp-block-paragraph">別シートにある表を横に結合することもできます。</p>



<pre class="wp-block-code"><code>=HSTACK(A1:C4, '評価シート'!A1:B4)</code></pre>



<p class="wp-block-paragraph">シート名をシングルクォーテーションで囲んで指定します。部署ごとに別シートで管理しているデータを、1つの一覧表にまとめたいときに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン5: UNIQUE関数で重複なし結合リストを作る</span></h3>



<p class="wp-block-paragraph">複数の範囲から重複を除外した一覧を作るパターンです。</p>



<pre class="wp-block-code"><code>=UNIQUE(HSTACK(A2:A10, D2:D10))</code></pre>



<p class="wp-block-paragraph">2つの列を横に結合した後、<a href="https://mashukabu.com/spreadsheet-unique-function/">UNIQUE関数</a>で重複行を除外しています。結合したデータから一意の組み合わせだけを取り出したいときに使えます。</p>



<h2 class="wp-block-heading"><span id="toc14">VSTACK関数との違い・使い分け</span></h2>



<p class="wp-block-paragraph">HSTACK関数には、ペアとなる<a href="https://mashukabu.com/spreadsheet-vstack-function/">VSTACK関数</a>があります。どちらも表を結合する関数ですが、結合の方向が異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>HSTACK関数</th><th>VSTACK関数</th></tr></thead><tbody><tr><td>結合方向</td><td>横方向（右に並べる）</td><td>縦方向（下に積み重ねる）</td></tr><tr><td>語源</td><td>Horizontal Stack（水平に積む）</td><td>Vertical Stack（垂直に積む）</td></tr><tr><td>結果の行数</td><td>各配列の行数の最大値</td><td>各配列の行数の合計</td></tr><tr><td>結果の列数</td><td>各配列の列数の合計</td><td>各配列の列数の最大値</td></tr><tr><td>サイズ不一致時</td><td>不足行を#N/Aで埋める</td><td>不足列を#N/Aで埋める</td></tr><tr><td>主な用途</td><td>項目（列）を横に追加する</td><td>月別・支店別データを縦にまとめる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">使い分けはシンプルです。</p>



<ul class="wp-block-list"><li><strong>列（項目）を増やしたい</strong> → HSTACK関数</li><li><strong>行（データ件数）を増やしたい</strong> → VSTACK関数</li></ul>



<p class="wp-block-paragraph">たとえば「社員名簿に評価列を追加したい」ならHSTACK関数です。「1月〜3月の売上データを1つの表にまとめたい」なら<a href="https://mashukabu.com/spreadsheet-vstack-function/">VSTACK関数</a>を使いましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>HSTACKとVSTACKは組み合わせて使うこともできます。VSTACKで月別データを縦に結合してから、HSTACKで集計列を横に追加する、といった使い方も可能ですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc15">中カッコ{配列}記法との違い・使い分け</span></h2>



<p class="wp-block-paragraph">スプレッドシートには、中カッコ <code>{}</code> を使って配列を作る記法があります。HSTACK関数と似た結果を得られますが、いくつかの違いがあります。</p>



<h3 class="wp-block-heading"><span id="toc16">中カッコ配列記法とは</span></h3>



<p class="wp-block-paragraph">中カッコの中でカンマ区切りにすると、横方向に結合できます。</p>



<pre class="wp-block-code"><code>={A1:C4, E1:F4}</code></pre>



<p class="wp-block-paragraph">これは <code>=HSTACK(A1:C4, E1:F4)</code> とほぼ同じ結果になります。なお、セミコロン区切り <code>{A1:C4; E1:F4}</code> にすると縦方向の結合（VSTACK相当）になります。</p>



<h3 class="wp-block-heading"><span id="toc17">HSTACK関数と配列記法の比較</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>HSTACK関数</th><th>中カッコ配列記法</th></tr></thead><tbody><tr><td>構文</td><td><code>=HSTACK(範囲1, 範囲2)</code></td><td><code>={範囲1, 範囲2}</code></td></tr><tr><td>行数不一致時</td><td>#N/Aで自動補完</td><td>エラーになる場合がある</td></tr><tr><td>3つ以上の結合</td><td>カンマで追加するだけ</td><td>ネストが深くなりがち</td></tr><tr><td>他関数との組み合わせ</td><td>FILTER・SORTの引数に直接渡せる</td><td>配列記法ごと渡す必要がある</td></tr><tr><td>可読性</td><td>関数名から意図が明確</td><td>慣れないと読みにくい</td></tr><tr><td>Excel互換性</td><td>あり（Microsoft 365）</td><td>Sheets固有の記法</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>使い分けの目安は次のとおりです。</strong></p>



<ul class="wp-block-list"><li><strong>行数が異なる表を結合する、3つ以上の表を結合する</strong> → HSTACK関数</li><li><strong>行数が同じ2つの表をサッと結合したい</strong> → 中カッコ配列記法</li></ul>



<p class="wp-block-paragraph">中カッコ記法は手軽ですが、行数が異なる表を結合すると意図しない結果になることがあります。HSTACK関数は行数不一致を#N/Aで自動補完するため、安全に使えますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>中カッコ配列記法はGoogleスプレッドシート特有の記法です。Excelとの互換性を意識する場合は、HSTACK関数を使うのがおすすめです。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc18">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">HSTACK関数はシンプルですが、使い方によってはエラーが発生します。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#REF!</code></td><td>出力先のセルに既にデータがある</td><td>出力先の範囲を空にしてください</td></tr><tr><td><code>#REF!</code></td><td>参照先の行や列が削除された</td><td>参照先セルが存在するか確認してください</td></tr><tr><td><code>#N/A</code></td><td>行数が異なる表を結合した</td><td>IFERRORで空白に置換してください</td></tr><tr><td><code>#NAME?</code></td><td>関数名のスペルミス</td><td>「HSTACK」のスペルを確認してください</td></tr><tr><td><code>#ERROR!</code></td><td>引数にセル範囲以外の不正な値を指定した</td><td>セル範囲または配列を正しく指定してください</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">特に注意したいのが <code>#N/A</code> です。これはエラーではなく、行数不一致時の仕様による自動補完です。見た目が気になる場合はIFERROR関数で対処しましょう。</p>



<pre class="wp-block-code"><code>=IFERROR(HSTACK(A1:B3, D1:E5), &quot;&quot;)</code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「出力先のセルに既にデータがある」ケースが最も多いトラブルです。数式を入力するセルの右側に、結合後の列数分の空きスペースを確保してくださいね。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc19">まとめ</span></h2>



<p class="wp-block-paragraph">HSTACK関数は、複数の表やセル範囲を横方向に結合するための関数です。数式ひとつで列を追加でき、元データの更新も自動で反映されます。</p>



<p class="wp-block-paragraph">この記事のポイントをおさらいしておきましょう。</p>



<ul class="wp-block-list"><li>HSTACK関数は <code>=HSTACK(範囲1, 範囲2)</code> で、表を横方向に結合する</li><li>引数をカンマで追加するだけで、3つ以上の表もまとめて結合できる</li><li>行数が異なる表を結合すると、不足行は#N/Aで埋まる。IFERRORで対処する</li><li><a href="https://mashukabu.com/spreadsheet-vstack-function/">VSTACK関数</a>はペア関数で、縦方向に結合する。列を増やすならHSTACK、行を増やすならVSTACK</li><li>中カッコ配列記法 <code>={範囲1, 範囲2}</code> でも横結合できるが、行数不一致時はHSTACK関数のほうが安全</li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>や<a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>と組み合わせれば、結合と加工が1つの数式で完結する</li></ul>



<p class="wp-block-paragraph">まずは <code>=HSTACK(A1:C3, E1:F3)</code> のシンプルな横結合から試してみてください。別シートの情報を横に並べたり、計算列を追加したりと、使い道がどんどん広がりますよ。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc20">この記事で紹介した関数・関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-vstack-function/">スプレッドシートのVSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-hstack/">ExcelのHSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">スプレッドシートのFILTER関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">スプレッドシートのSORT関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-unique-function/">スプレッドシートのUNIQUE関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-arrayformula-function/">スプレッドシートのARRAYFORMULA関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-tocol-function/">スプレッドシートのTOCOL関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-transpose-function/">スプレッドシートのTRANSPOSE関数の使い方</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-hstack-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのVSTACK関数の使い方｜複数の表を縦に結合</title>
		<link>https://mashukabu.com/spreadsheet-vstack-function/</link>
					<comments>https://mashukabu.com/spreadsheet-vstack-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:29:06 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[HSTACK関数]]></category>
		<category><![CDATA[VSTACK関数]]></category>
		<category><![CDATA[縦方向に結合]]></category>
		<category><![CDATA[配列操作]]></category>
		<category><![CDATA[配列記法]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4731</guid>

					<description><![CDATA[スプレッドシートのVSTACK関数で複数の表を縦方向に結合する方法を解説。基本構文から実務活用パターン、HSTACK関数や中カッコ配列記法との違いまで、わかりやすく紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで、月別や支店別の表を1つにまとめたいことってありますよね。1月分の売上データの下に2月分を追加したり、東京支店と大阪支店の一覧をつなげたり。手作業でコピーすると、行がズレたりヘッダーが重複したりで大変です。</p>



<p class="wp-block-paragraph">VSTACK関数を使えば、複数の表を数式ひとつで縦方向に結合できます。元データが更新されれば結合結果も自動で反映されるので、メンテナンスの手間もかかりません。</p>



<p class="wp-block-paragraph">この記事では、VSTACK関数の基本から、<a href="https://mashukabu.com/spreadsheet-hstack-function/">HSTACK関数</a>や中カッコ配列記法との違いまでわかりやすく解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのVSTACK関数とは？</a><ol><li><a href="#toc2" tabindex="0">VSTACK関数の基本構文</a></li><li><a href="#toc3" tabindex="0">列数が異なる表を結合した場合</a></li></ol></li><li><a href="#toc4" tabindex="0">VSTACK関数の基本的な使い方</a><ol><li><a href="#toc5" tabindex="0">サンプルデータ</a></li><li><a href="#toc6" tabindex="0">2つの表を縦に結合する</a></li><li><a href="#toc7" tabindex="0">3つ以上の表を結合する</a></li></ol></li><li><a href="#toc8" tabindex="0">VSTACK関数の実務活用パターン</a><ol><li><a href="#toc9" tabindex="0">パターン1: ヘッダーを除外して結合する</a></li><li><a href="#toc10" tabindex="0">パターン2: FILTER関数と組み合わせて絞り込む</a></li><li><a href="#toc11" tabindex="0">パターン3: SORT関数と組み合わせて並べ替える</a></li><li><a href="#toc12" tabindex="0">パターン4: 別シートの表を結合する</a></li><li><a href="#toc13" tabindex="0">パターン5: UNIQUE関数で重複なしリストを作る</a></li></ol></li><li><a href="#toc14" tabindex="0">HSTACK関数との違い・使い分け</a></li><li><a href="#toc15" tabindex="0">中カッコ{配列}記法との違い・使い分け</a><ol><li><a href="#toc16" tabindex="0">中カッコ配列記法とは</a></li><li><a href="#toc17" tabindex="0">VSTACK関数と配列記法の比較</a></li></ol></li><li><a href="#toc18" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc19" tabindex="0">QUERY関数と組み合わせて結合後のデータを集計する</a><ol><li><a href="#toc20" tabindex="0">複数月のデータを結合して担当者別に集計する</a></li><li><a href="#toc21" tabindex="0">WHERE句で特定条件だけ抽出する</a></li></ol></li><li><a href="#toc22" tabindex="0">IMPORTRANGE関数との組み合わせ：別スプレッドシートのデータを縦に結合する</a><ol><li><a href="#toc23" tabindex="0">別スプレッドシートのデータを結合する数式</a></li><li><a href="#toc24" tabindex="0">実務での活用シーン</a></li><li><a href="#toc25" tabindex="0">IMPORTRANGE使用時の注意点</a></li></ol></li><li><a href="#toc26" tabindex="0">VSTACK関数のよくある質問（FAQ）</a><ol><li><a href="#toc27" tabindex="0">Q1. VSTACKとFLATTEN関数は何が違う？</a></li><li><a href="#toc28" tabindex="0">Q2. VSTACKとTOCOL関数の使い分けは？</a></li><li><a href="#toc29" tabindex="0">Q3. INDIRECT関数と組み合わせて動的に結合できる？</a></li><li><a href="#toc30" tabindex="0">Q4. VSTACKはExcelでも使える？</a></li></ol></li><li><a href="#toc31" tabindex="0">まとめ</a><ol><li><a href="#toc32" tabindex="0">この記事で紹介した関数・関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのVSTACK関数とは？</span></h2>



<p class="wp-block-paragraph">VSTACK関数（読み方: ブイスタック関数）は、複数の配列やセル範囲を<strong>縦方向（垂直方向）に結合</strong>する関数です。「V」はVertical（垂直）、「STACK」は積み重ねるという意味で、表を縦に積み重ねるイメージです。</p>



<p class="wp-block-paragraph">たとえば、3行の1月売上と3行の2月売上を結合して、6行の売上一覧表を作れます。元データと数式でつながっているため、元データを変更すれば結合結果も自動で更新されますよ。</p>



<p class="wp-block-paragraph">VSTACK関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>複数の表やセル範囲を縦方向に結合する</li><li>引数を追加するだけで3つ以上の表もまとめて結合できる</li><li>列数が異なる表を結合した場合、不足列は自動で補完される</li><li>FILTER関数やSORT関数と組み合わせて結合後のデータを加工できる</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>VSTACK関数はGoogleスプレッドシート独自の関数ではなく、ExcelのMicrosoft 365やExcel 2024でも使用できます。ただし、Excel 2021以前のバージョンでは使えません。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc2">VSTACK関数の基本構文</span></h3>



<pre class="wp-block-code"><code>=VSTACK(配列1, [配列2], ...)</code></pre>



<p class="wp-block-paragraph">カッコの中に、縦方向に結合したい範囲を順番に指定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>配列1</td><td>必須</td><td>結合する最初のセル範囲または配列</td></tr><tr><td>配列2以降</td><td>任意</td><td>追加で結合するセル範囲または配列（最大254個）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">結合したい表をカンマ区切りで並べるだけのシンプルな構文です。引数は最大254個まで指定できますが、実務では2〜4個程度を使うことがほとんどですよ。</p>



<h3 class="wp-block-heading"><span id="toc3">列数が異なる表を結合した場合</span></h3>



<p class="wp-block-paragraph">VSTACK関数では、結合する表の列数が異なっても結合自体は成功します。ただし、列数が少ない側の不足分は<strong>#N/Aエラー</strong>で自動的に埋められます。</p>



<p class="wp-block-paragraph">たとえば、3列の表と5列の表を結合すると、3列の表側の4〜5列目に#N/Aが入ります。この#N/Aを消したい場合は、IFERROR関数で囲みましょう。</p>



<pre class="wp-block-code"><code>=IFERROR(VSTACK(A1:C3, A5:E7), &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">これで#N/Aの部分が空白に置き換わります。列数が異なる表を扱うときは、セットで覚えておいてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc4">VSTACK関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">ここでは、月別の売上データを使ってVSTACK関数の基本操作を紹介します。</p>



<h3 class="wp-block-heading"><span id="toc5">サンプルデータ</span></h3>



<p class="wp-block-paragraph">A1:C4に1月の売上データ、A6:C8に2月の売上データが入っているとします。</p>



<p class="wp-block-paragraph">1月売上（A1:C4）:</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>1</td><td>担当者</td><td>商品</td><td>売上</td></tr><tr><td>2</td><td>佐藤</td><td>商品A</td><td>50,000</td></tr><tr><td>3</td><td>田中</td><td>商品B</td><td>30,000</td></tr><tr><td>4</td><td>鈴木</td><td>商品C</td><td>45,000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">2月売上（A6:C8）:</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>6</td><td>佐藤</td><td>商品A</td><td>55,000</td></tr><tr><td>7</td><td>田中</td><td>商品B</td><td>28,000</td></tr><tr><td>8</td><td>鈴木</td><td>商品D</td><td>60,000</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc6">2つの表を縦に結合する</span></h3>



<p class="wp-block-paragraph">出力先のセル（たとえばE1）に以下の数式を入力して、Enterを押します。</p>



<pre class="wp-block-code"><code>=VSTACK(A1:C4, A6:C8)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>E</th><th>F</th><th>G</th></tr></thead><tbody><tr><td>1</td><td>担当者</td><td>商品</td><td>売上</td></tr><tr><td>2</td><td>佐藤</td><td>商品A</td><td>50,000</td></tr><tr><td>3</td><td>田中</td><td>商品B</td><td>30,000</td></tr><tr><td>4</td><td>鈴木</td><td>商品C</td><td>45,000</td></tr><tr><td>5</td><td>佐藤</td><td>商品A</td><td>55,000</td></tr><tr><td>6</td><td>田中</td><td>商品B</td><td>28,000</td></tr><tr><td>7</td><td>鈴木</td><td>商品D</td><td>60,000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">1月の売上データの下に2月のデータがきれいに結合されました。1つの数式を入力するだけで、7行分のデータがスピルで自動展開されます。</p>



<h3 class="wp-block-heading"><span id="toc7">3つ以上の表を結合する</span></h3>



<p class="wp-block-paragraph">結合する表が3つ以上ある場合も、カンマで区切って引数を追加するだけです。</p>



<pre class="wp-block-code"><code>=VSTACK(A1:C4, A6:C8, A10:C12)</code></pre>



<p class="wp-block-paragraph">1月・2月・3月の売上データを一気に結合できます。月次データが増えても数式に追加するだけなので、管理がラクですよ。</p>



<h2 class="wp-block-heading"><span id="toc8">VSTACK関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc9">パターン1: ヘッダーを除外して結合する</span></h3>



<p class="wp-block-paragraph">月別データを結合するとき、各テーブルにヘッダー行があると重複してしまいますよね。1つ目の表はヘッダー込み、2つ目以降はヘッダーを除外して結合しましょう。</p>



<pre class="wp-block-code"><code>=VSTACK(A1:C4, A7:C8)</code></pre>



<p class="wp-block-paragraph">2つ目の範囲をヘッダー行の次（A7）から指定すれば、ヘッダーの重複を防げます。テーブルが多い場合はこのパターンを基本にしてくださいね。</p>



<h3 class="wp-block-heading"><span id="toc10">パターン2: FILTER関数と組み合わせて絞り込む</span></h3>



<p class="wp-block-paragraph">複数の表を結合した後、条件に合うデータだけ抽出したいことがありますよね。<a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>と組み合わせましょう。</p>



<pre class="wp-block-code"><code>=FILTER(VSTACK(A2:C4, A6:C8), VSTACK(C2:C4, C6:C8)&gt;=50000)</code></pre>



<p class="wp-block-paragraph">VSTACKで結合した表に対して、売上が50,000以上のデータだけを抽出しています。条件列もVSTACKで結合するのがポイントです。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン3: SORT関数と組み合わせて並べ替える</span></h3>



<p class="wp-block-paragraph">結合したデータを特定の列で並べ替えたい場合は、<a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>が便利です。</p>



<pre class="wp-block-code"><code>=SORT(VSTACK(A2:C4, A6:C8), 3, FALSE)</code></pre>



<p class="wp-block-paragraph">第2引数の「3」は結合後の3列目（売上）を基準にソートします。第3引数のFALSEは降順です。結合と並べ替えが1つの数式で完結しますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン4: 別シートの表を結合する</span></h3>



<p class="wp-block-paragraph">別シートにある表を縦に結合することもできます。</p>



<pre class="wp-block-code"><code>=VSTACK(A1:C4, '2月'!A1:C4, '3月'!A1:C4)</code></pre>



<p class="wp-block-paragraph">シート名をシングルクォーテーションで囲んで指定します。月別に別シートで管理しているデータを、1つの一覧表にまとめたいときに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン5: UNIQUE関数で重複なしリストを作る</span></h3>



<p class="wp-block-paragraph">複数の範囲から重複を除外した一覧を作るパターンです。</p>



<pre class="wp-block-code"><code>=UNIQUE(VSTACK(A2:A10, D2:D10))</code></pre>



<p class="wp-block-paragraph">2つの列を縦に結合した後、<a href="https://mashukabu.com/spreadsheet-unique-function/">UNIQUE関数</a>で重複行を除外しています。部署名や商品名などの一意なリストを作りたいときに使えます。</p>



<h2 class="wp-block-heading"><span id="toc14">HSTACK関数との違い・使い分け</span></h2>



<p class="wp-block-paragraph">VSTACK関数には、ペアとなる<a href="https://mashukabu.com/spreadsheet-hstack-function/">HSTACK関数</a>があります。どちらも表を結合する関数ですが、結合の方向が異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>VSTACK関数</th><th>HSTACK関数</th></tr></thead><tbody><tr><td>結合方向</td><td>縦方向（下に積み重ねる）</td><td>横方向（右に並べる）</td></tr><tr><td>語源</td><td>Vertical Stack（垂直に積む）</td><td>Horizontal Stack（水平に積む）</td></tr><tr><td>結果の行数</td><td>各配列の行数の合計</td><td>各配列の行数の最大値</td></tr><tr><td>結果の列数</td><td>各配列の列数の最大値</td><td>各配列の列数の合計</td></tr><tr><td>サイズ不一致時</td><td>不足列を#N/Aで埋める</td><td>不足行を#N/Aで埋める</td></tr><tr><td>主な用途</td><td>月別・支店別データを縦にまとめる</td><td>項目（列）を横に追加する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">使い分けはシンプルです。</p>



<ul class="wp-block-list"><li><strong>行（データ件数）を増やしたい</strong> → VSTACK関数</li><li><strong>列（項目）を増やしたい</strong> → HSTACK関数</li></ul>



<p class="wp-block-paragraph">たとえば「1月〜3月の売上データを1つの表にまとめたい」ならVSTACK関数です。「社員名簿に評価列を追加したい」なら<a href="https://mashukabu.com/spreadsheet-hstack-function/">HSTACK関数</a>を使いましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>VSTACKとHSTACKは組み合わせて使うこともできます。VSTACKで月別データを縦に結合してから、HSTACKで集計列を横に追加する、といった使い方も可能ですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc15">中カッコ{配列}記法との違い・使い分け</span></h2>



<p class="wp-block-paragraph">スプレッドシートには、中カッコ <code>{}</code> を使って配列を作る記法があります。VSTACK関数と似た結果を得られますが、いくつかの違いがあります。</p>



<h3 class="wp-block-heading"><span id="toc16">中カッコ配列記法とは</span></h3>



<p class="wp-block-paragraph">中カッコの中でセミコロン区切りにすると、縦方向に結合できます。</p>



<pre class="wp-block-code"><code>={A1:C4; A6:C8}</code></pre>



<p class="wp-block-paragraph">これは <code>=VSTACK(A1:C4, A6:C8)</code> とほぼ同じ結果になります。なお、カンマ区切り <code>{A1:C4, A6:C8}</code> にすると横方向の結合（HSTACK相当）になります。</p>



<h3 class="wp-block-heading"><span id="toc17">VSTACK関数と配列記法の比較</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>VSTACK関数</th><th>中カッコ配列記法</th></tr></thead><tbody><tr><td>構文</td><td><code>=VSTACK(範囲1, 範囲2)</code></td><td><code>={範囲1; 範囲2}</code></td></tr><tr><td>列数不一致時</td><td>#N/Aで自動補完</td><td>エラーになる場合がある</td></tr><tr><td>3つ以上の結合</td><td>カンマで追加するだけ</td><td>ネストが深くなりがち</td></tr><tr><td>他関数との組み合わせ</td><td>FILTER・SORTの引数に直接渡せる</td><td>配列記法ごと渡す必要がある</td></tr><tr><td>可読性</td><td>関数名から意図が明確</td><td>慣れないと読みにくい</td></tr><tr><td>Excel互換性</td><td>あり（Microsoft 365）</td><td>Sheets固有の記法</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>使い分けの目安は次のとおりです。</strong></p>



<ul class="wp-block-list"><li><strong>列数が異なる表を結合する、3つ以上の表を結合する</strong> → VSTACK関数</li><li><strong>列数が同じ2つの表をサッと結合したい</strong> → 中カッコ配列記法</li></ul>



<p class="wp-block-paragraph">中カッコ記法は手軽ですが、列数が異なる表を結合すると意図しない結果になることがあります。VSTACK関数は列数不一致を#N/Aで自動補完するため、安全に使えますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>中カッコ配列記法はGoogleスプレッドシート特有の記法です。Excelとの互換性を意識する場合は、VSTACK関数を使うのがおすすめです。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc18">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">VSTACK関数はシンプルですが、使い方によってはエラーが発生します。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#REF!</code></td><td>出力先のセルに既にデータがある</td><td>出力先の範囲を空にしてください</td></tr><tr><td><code>#REF!</code></td><td>参照先の行や列が削除された</td><td>参照先セルが存在するか確認してください</td></tr><tr><td><code>#N/A</code></td><td>列数が異なる表を結合した</td><td>IFERRORで空白に置換してください</td></tr><tr><td><code>#NAME?</code></td><td>関数名のスペルミス</td><td>「VSTACK」のスペルを確認してください</td></tr><tr><td><code>#ERROR!</code></td><td>引数にセル範囲以外の不正な値を指定した</td><td>セル範囲または配列を正しく指定してください</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">特に注意したいのが <code>#N/A</code> です。これはエラーではなく、列数不一致時の仕様による自動補完です。見た目が気になる場合はIFERROR関数で対処しましょう。</p>



<pre class="wp-block-code"><code>=IFERROR(VSTACK(A1:C3, A5:E7), &quot;&quot;)</code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「出力先のセルに既にデータがある」ケースが最も多いトラブルです。数式を入力するセルの下側に、結合後の行数分の空きスペースを確保してくださいね。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc19">QUERY関数と組み合わせて結合後のデータを集計する</span></h2>



<p class="wp-block-paragraph">VSTACK関数で複数の表を結合した後、<a href="https://mashukabu.com/spreadsheet-query-function/">QUERY関数</a>と組み合わせると、SQLライクな集計・絞り込みが可能になります。</p>



<h3 class="wp-block-heading"><span id="toc20">複数月のデータを結合して担当者別に集計する</span></h3>



<p class="wp-block-paragraph">たとえば、1月〜3月の売上データを結合して、担当者ごとの売上合計を集計したい場合は次のように書きます。</p>



<pre class="wp-block-code"><code>=QUERY(VSTACK(A1:C4, A6:C8, A10:C12),
  &quot;SELECT Col1, SUM(Col3) GROUP BY Col1 LABEL Col1 '担当者', SUM(Col3) '売上合計'&quot;, 0)</code></pre>



<p class="wp-block-paragraph">VSTACK で結合した配列をQUERY関数の第1引数に渡しています。<code>Col1</code> は1列目（担当者）、<code>Col3</code> は3列目（売上）を指し、GROUP BY で担当者ごとに集計します。最後の <code>0</code> はヘッダー行がないことを示しています（VSTACKで結合した表にヘッダーが含まれる場合は <code>1</code> にしてください）。</p>



<h3 class="wp-block-heading"><span id="toc21">WHERE句で特定条件だけ抽出する</span></h3>



<p class="wp-block-paragraph">結合したデータのうち、売上50,000以上のレコードだけ抽出するには次のようにします。</p>



<pre class="wp-block-code"><code>=QUERY(VSTACK(A2:C4, A6:C8),
  &quot;SELECT * WHERE Col3 &gt;= 50000&quot;)</code></pre>



<p class="wp-block-paragraph">FILTER関数と役割が重なりますが、AND/OR条件の組み合わせや、ORDER BY（並べ替え）、LIMIT（件数制限）もSQL風に書けるのがQUERYの強みです。</p>



<h2 class="wp-block-heading"><span id="toc22">IMPORTRANGE関数との組み合わせ：別スプレッドシートのデータを縦に結合する</span></h2>



<p class="wp-block-paragraph">同じファイル内の複数シートを結合するだけでなく、<strong>別のスプレッドシートファイル</strong>のデータも縦に結合できます。そのときに使うのが<a href="https://mashukabu.com/spreadsheet-importrange-complete-guide/">IMPORTRANGE関数</a>です。</p>



<p class="wp-block-paragraph">IMPORTRANGE関数は、別のスプレッドシートURLとセル範囲を指定して、外部ファイルのデータを取り込む関数です。これをVSTACKと組み合わせると、複数のファイルに分散しているデータを1か所に集約できます。</p>



<h3 class="wp-block-heading"><span id="toc23">別スプレッドシートのデータを結合する数式</span></h3>



<pre class="wp-block-code"><code>=VSTACK(
  IMPORTRANGE(&quot;スプレッドシートURL_A&quot;, &quot;Sheet1!A2:C100&quot;),
  IMPORTRANGE(&quot;スプレッドシートURL_B&quot;, &quot;Sheet1!A2:C100&quot;)
)</code></pre>



<p class="wp-block-paragraph">URLには各スプレッドシートの共有URLを指定します。ヘッダー行を除いた範囲（A2以降）を渡すと、重複なしでデータが縦に結合されます。</p>



<h3 class="wp-block-heading"><span id="toc24">実務での活用シーン</span></h3>



<p class="wp-block-paragraph"><strong>部門ごとのスプレッドシートを集約する</strong>場合を考えてみましょう。東京支店・大阪支店・名古屋支店がそれぞれ別ファイルで売上データを管理しているとき、全社集計シートに上記の数式を1つ書くだけで各支店のデータをまとめた一覧表ができあがります。</p>



<p class="wp-block-paragraph">各支店が自分のファイルを更新すれば、集計シートにも自動で反映されます。これにより「月末に各支店からデータを集めてコピペする」作業が不要になりますよ。</p>



<h3 class="wp-block-heading"><span id="toc25">IMPORTRANGE使用時の注意点</span></h3>



<p class="wp-block-paragraph">初めて別スプレッドシートを参照するときは、アクセスの許可が必要です。数式を入力すると「アクセスを許可する」というポップアップが出るので、クリックして承認してください。許可後は自動更新されます。</p>



<p class="wp-block-paragraph">また、IMPORTRANGE はデータ取得に少し時間がかかる場合があります。シートを開いた直後は「読み込み中…」と表示されることがありますが、そのまま待てばデータが表示されます。</p>



<p class="wp-block-paragraph">IMPORTRANGE関数の使い方を詳しく知りたい方は、<a href="https://mashukabu.com/spreadsheet-importrange-complete-guide/">スプレッドシートのIMPORTRANGE関数の使い方</a>もあわせてご覧ください。</p>



<h2 class="wp-block-heading"><span id="toc26">VSTACK関数のよくある質問（FAQ）</span></h2>



<h3 class="wp-block-heading"><span id="toc27">Q1. VSTACKとFLATTEN関数は何が違う？</span></h3>



<p class="wp-block-paragraph">VSTACK関数は「複数の範囲を縦に並べる」関数で、表の構造（列）を保ったまま結合します。一方、<a href="https://mashukabu.com/spreadsheet-flatten-function/">FLATTEN関数</a>は範囲内のすべての値を「1列に変換する」関数です。</p>



<p class="wp-block-paragraph">たとえば3行3列の表をFLATTENに渡すと9行1列になりますが、VSTACKは複数の表を縦に積み重ねるため列数は保持されます。「行数を増やす（表を縦につなぐ）」なら VSTACK、「全要素を1列にまとめる」なら FLATTEN と使い分けましょう。</p>



<h3 class="wp-block-heading"><span id="toc28">Q2. VSTACKとTOCOL関数の使い分けは？</span></h3>



<p class="wp-block-paragraph">TOCOL関数は「1つの範囲を1列に変換する」関数です。複数の表を縦に結合するVSTACKとは用途が異なります。</p>



<p class="wp-block-paragraph">「複数の列・範囲から値を1列のリストにまとめたい」場合は TOCOL や FLATTEN が向いています。「複数の表をそのまま縦につなぎたい」場合は VSTACK が適切です。</p>



<h3 class="wp-block-heading"><span id="toc29">Q3. INDIRECT関数と組み合わせて動的に結合できる？</span></h3>



<p class="wp-block-paragraph">INDIRECT関数でシート名を動的に指定しようとしても、VSTACKの引数に直接 INDIRECT を渡すことはできません（配列引数としてサポートされていないため）。</p>



<p class="wp-block-paragraph">代わりに、対象シートのデータを参照する補助列を各シートに作り、VSTACKでその補助列を結合する方法が現実的です。シートが多い場合はGASでデータを集約するアプローチも検討してください。</p>



<h3 class="wp-block-heading"><span id="toc30">Q4. VSTACKはExcelでも使える？</span></h3>



<p class="wp-block-paragraph">はい。Microsoft 365（サブスクリプション版）およびExcel 2024以降で使用できます。Excel 2021以前のバージョンでは VSTACK 関数自体が存在しないため、代替として <code>{A1:C3; A5:C7}</code> のような中カッコ配列記法か、Power Queryでの結合を検討してください。</p>



<p class="wp-block-paragraph">Googleスプレッドシートで書いたVSTACK数式は、Excel365でもそのまま動作します。</p>



<h2 class="wp-block-heading"><span id="toc31">まとめ</span></h2>



<p class="wp-block-paragraph">VSTACK関数は、複数の表やセル範囲を縦方向に結合するための関数です。数式ひとつでデータを積み重ねでき、元データの更新も自動で反映されます。</p>



<p class="wp-block-paragraph">この記事のポイントをおさらいしておきましょう。</p>



<ul class="wp-block-list"><li>VSTACK関数は <code>=VSTACK(範囲1, 範囲2)</code> で、表を縦方向に結合する</li><li>引数をカンマで追加するだけで、3つ以上の表もまとめて結合できる</li><li>列数が異なる表を結合すると、不足列は#N/Aで埋まる。IFERRORで対処する</li><li><a href="https://mashukabu.com/spreadsheet-hstack-function/">HSTACK関数</a>はペア関数で、横方向に結合する。行を増やすならVSTACK、列を増やすならHSTACK</li><li>中カッコ配列記法 <code>={範囲1; 範囲2}</code> でも縦結合できるが、列数不一致時はVSTACK関数のほうが安全</li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>や<a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>と組み合わせれば、結合と加工が1つの数式で完結する</li></ul>



<p class="wp-block-paragraph">まずは <code>=VSTACK(A1:C3, A5:C7)</code> のシンプルな縦結合から試してみてください。月別データの集約や支店別データの統合など、使い道がどんどん広がりますよ。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc32">この記事で紹介した関数・関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-hstack-function/">スプレッドシートのHSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-vstack/">ExcelのVSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">スプレッドシートのFILTER関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">スプレッドシートのSORT関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-unique-function/">スプレッドシートのUNIQUE関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-arrayformula-function/">スプレッドシートのARRAYFORMULA関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-tocol-function/">スプレッドシートのTOCOL関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-transpose-function/">スプレッドシートのTRANSPOSE関数の使い方</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-vstack-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
