<?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/%E5%8B%95%E7%9A%84%E9%85%8D%E5%88%97%E9%96%A2%E6%95%B0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Sat, 04 Apr 2026 04:32:11 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</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>ExcelのSORTBY関数の使い方｜別列基準で並び替え</title>
		<link>https://mashukabu.com/excel-function-howto-use-sortby/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-sortby/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 04 Apr 2026 04:32:11 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[SORTBY関数]]></category>
		<category><![CDATA[SORT関数]]></category>
		<category><![CDATA[スピル]]></category>
		<category><![CDATA[並べ替え]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[複数条件]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5768</guid>

					<description><![CDATA[ExcelのSORTBY関数の使い方を基本から応用まで解説。別の列を基準に並べ替える方法、複数キーの指定、SORT関数との違い、FILTER関数との組み合わせ、ふりがな順ソートまで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p>Excelでデータを並べ替えるとき、「この列の値を基準にして並べ替えたいけど、表示するのは別の列も含めた全体」と思ったことはありませんか？</p>



<p><a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>でも並べ替えはできます。でも基準を列番号で指定するので、列を挿入・削除すると番号がずれてしまうんですよね。</p>



<p>SORTBY関数なら、基準にしたい列を範囲で直接指定できます。列の構成が変わっても数式が壊れにくく、複数キーでの並べ替えもかんたんです。この記事では、SORTBY関数の使い方を基本から応用まで解説します。</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">SORTBY関数とは？別列基準で並べ替える関数</a><ol><li><a href="#toc2" tabindex="0">SORTBY関数が使えるExcelのバージョン</a></li></ol></li><li><a href="#toc3" tabindex="0">SORTBY関数の書き方（構文と引数）</a><ol><li><a href="#toc4" tabindex="0">基本構文</a></li><li><a href="#toc5" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc6" tabindex="0">基本の使い方｜SORTBY関数で別の列を基準に並べ替える</a><ol><li><a href="#toc7" tabindex="0">売上金額の降順で並べ替える</a></li><li><a href="#toc8" tabindex="0">日付の昇順で並べ替える</a></li><li><a href="#toc9" tabindex="0">配列外の列を基準に並べ替える</a></li></ol></li><li><a href="#toc10" tabindex="0">複数キーで並べ替える｜基準と順序をペアで追加</a><ol><li><a href="#toc11" tabindex="0">部署→売上の2キー並べ替え</a></li><li><a href="#toc12" tabindex="0">3キー以上の並べ替え</a></li></ol></li><li><a href="#toc13" tabindex="0">SORT関数との違い｜どちらを使うべきか</a></li><li><a href="#toc14" tabindex="0">実務で使えるSORTBY応用パターン</a><ol><li><a href="#toc15" tabindex="0">FILTER関数と組み合わせる｜抽出＋並べ替えを一発で</a></li><li><a href="#toc16" tabindex="0">SORTBY＋PHONETIC関数で五十音順に並べ替える</a></li><li><a href="#toc17" tabindex="0">VSTACK＋SORTBYで複数シートを統合して並べ替え</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">SORTBY関数とは？別列基準で並べ替える関数</span></h2>



<p>SORTBY関数（読み方：ソートバイ）は、指定した基準列の値をもとにデータを並べ替える関数です。<br>英語の「sort by」は「〜を基準に並べ替える」という意味があります。</p>



<p>SORT関数との最大の違いは、基準を「列番号」ではなく「列の範囲」で指定する点です。<br>さらに、基準と順序のペアを追加すれば、複数キーでの並べ替えもできます。</p>



<p>たとえば「部署で並べて、同じ部署内では売上が高い順」のような複数条件の並べ替えが、1つの数式で完結しますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">SORTBY関数が使えるExcelのバージョン</span></h3>



<p>SORTBY関数が使えるのは以下の環境です。</p>



<ul class="wp-block-list"><li>Microsoft 365（Windows / Mac）</li><li>Excel 2021</li><li>Excel 2024</li><li>Excel for the web</li></ul>



<p>Excel 2019以前では使えません。<br>お使いのバージョンがわからない場合は、<a href="https://mashukabu.com/modern-excel-explanation/">モダンExcel解説</a>で確認してみてください。</p>



<h2 class="wp-block-heading"><span id="toc3">SORTBY関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc4">基本構文</span></h3>



<pre class="wp-block-code"><code>=SORTBY(配列, 基準配列1, [並べ替え順序1], [基準配列2, 並べ替え順序2], ...)</code></pre>



<h3 class="wp-block-heading"><span id="toc5">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th><th>既定値</th></tr></thead><tbody><tr><td>配列</td><td>必須</td><td>並べ替え対象のセル範囲または配列</td><td>&#8211;</td></tr><tr><td>基準配列1</td><td>必須</td><td>並べ替えの基準にする列（1列または1行のみ）</td><td>&#8211;</td></tr><tr><td>並べ替え順序1</td><td>省略可</td><td>1 = 昇順 / -1 = 降順</td><td>1（昇順）</td></tr><tr><td>基準配列2以降</td><td>省略可</td><td>2番目以降の基準と順序のペア（最大126組）</td><td>&#8211;</td></tr></tbody></table></figure>



<p>必須の引数は「配列」と「基準配列1」の2つです。<br>並べ替え順序を省略すると昇順（1）になります。</p>



<p>ポイントは、基準配列に<strong>1列（または1行）のみ</strong>を指定することです。<br>複数列を基準配列に指定するとエラーになるので注意してください。</p>



<h2 class="wp-block-heading"><span id="toc6">基本の使い方｜SORTBY関数で別の列を基準に並べ替える</span></h2>



<p>ここから実際の数式を見ていきましょう。<br>以下の売上データ（A1:D8）を使って解説します。</p>



<figure class="wp-block-table"><table><thead><tr><th>担当者</th><th>部署</th><th>売上金額</th><th>日付</th></tr></thead><tbody><tr><td>佐藤</td><td>営業部</td><td>480,000</td><td>2024/4/5</td></tr><tr><td>鈴木</td><td>総務部</td><td>320,000</td><td>2024/4/12</td></tr><tr><td>高橋</td><td>営業部</td><td>550,000</td><td>2024/4/3</td></tr><tr><td>田中</td><td>経理部</td><td>280,000</td><td>2024/4/18</td></tr><tr><td>伊藤</td><td>営業部</td><td>410,000</td><td>2024/4/8</td></tr><tr><td>渡辺</td><td>総務部</td><td>350,000</td><td>2024/4/15</td></tr><tr><td>山本</td><td>経理部</td><td>290,000</td><td>2024/4/22</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc7">売上金額の降順で並べ替える</span></h3>



<p>売上金額が高い順に並べ替えてみます。<br>基準にしたいC列の範囲を直接指定します。</p>



<pre class="wp-block-code"><code>=SORTBY(A2:D8, C2:C8, -1)</code></pre>



<p>第1引数がデータ全体（A2:D8）、第2引数が基準列（C2:C8）、第3引数が降順（-1）です。<br>結果は以下のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>担当者</th><th>部署</th><th>売上金額</th><th>日付</th></tr></thead><tbody><tr><td>高橋</td><td>営業部</td><td>550,000</td><td>2024/4/3</td></tr><tr><td>佐藤</td><td>営業部</td><td>480,000</td><td>2024/4/5</td></tr><tr><td>伊藤</td><td>営業部</td><td>410,000</td><td>2024/4/8</td></tr><tr><td>渡辺</td><td>総務部</td><td>350,000</td><td>2024/4/15</td></tr><tr><td>鈴木</td><td>総務部</td><td>320,000</td><td>2024/4/12</td></tr><tr><td>山本</td><td>経理部</td><td>290,000</td><td>2024/4/22</td></tr><tr><td>田中</td><td>経理部</td><td>280,000</td><td>2024/4/18</td></tr></tbody></table></figure>



<p><a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>なら <code>=SORT(A2:D8, 3, -1)</code> と列番号で指定しますが、SORTBY関数は <code>C2:C8</code> と範囲で指定します。<br>列を挿入・削除しても範囲参照が自動調整されるので、数式が壊れにくいのがメリットです。</p>



<h3 class="wp-block-heading"><span id="toc8">日付の昇順で並べ替える</span></h3>



<p>日付が古い順に並べ替える場合です。</p>



<pre class="wp-block-code"><code>=SORTBY(A2:D8, D2:D8, 1)</code></pre>



<p>第3引数を <code>1</code>（昇順）にします。昇順は既定値なので <code>=SORTBY(A2:D8, D2:D8)</code> と省略してもOKです。</p>



<h3 class="wp-block-heading"><span id="toc9">配列外の列を基準に並べ替える</span></h3>



<p>SORTBY関数の大きな特長は、表示するデータの範囲外にある列でも基準に使えることです。<br>たとえば、E列に「優先度」が入っている場合、A:D列のデータをE列基準で並べ替えられます。</p>



<pre class="wp-block-code"><code>=SORTBY(A2:D8, E2:E8, 1)</code></pre>



<p>SORT関数ではこれができません。基準列が配列の中に含まれている必要があります。<br>表に表示したくない基準で並べ替えたいときは、SORTBY関数が便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc10">複数キーで並べ替える｜基準と順序をペアで追加</span></h2>



<p>SORTBY関数の真骨頂は、複数の基準で並べ替えられることです。<br>基準配列と並べ替え順序のペアを追加するだけで、2段階・3段階の並べ替えが実現します。</p>



<h3 class="wp-block-heading"><span id="toc11">部署→売上の2キー並べ替え</span></h3>



<p>部署を昇順で並べて、同じ部署内では売上金額を降順にします。</p>



<pre class="wp-block-code"><code>=SORTBY(A2:D8, B2:B8, 1, C2:C8, -1)</code></pre>



<p>第2・3引数が1つ目の基準（部署昇順）、第4・5引数が2つ目の基準（売上降順）です。<br>結果は以下のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>担当者</th><th>部署</th><th>売上金額</th><th>日付</th></tr></thead><tbody><tr><td>高橋</td><td>営業部</td><td>550,000</td><td>2024/4/3</td></tr><tr><td>佐藤</td><td>営業部</td><td>480,000</td><td>2024/4/5</td></tr><tr><td>伊藤</td><td>営業部</td><td>410,000</td><td>2024/4/8</td></tr><tr><td>山本</td><td>経理部</td><td>290,000</td><td>2024/4/22</td></tr><tr><td>田中</td><td>経理部</td><td>280,000</td><td>2024/4/18</td></tr><tr><td>渡辺</td><td>総務部</td><td>350,000</td><td>2024/4/15</td></tr><tr><td>鈴木</td><td>総務部</td><td>320,000</td><td>2024/4/12</td></tr></tbody></table></figure>



<p>部署ごとにまとまり、各部署内では売上が高い順に並んでいますね。</p>



<h3 class="wp-block-heading"><span id="toc12">3キー以上の並べ替え</span></h3>



<p>基準と順序のペアは最大126組まで追加できます。<br>たとえば「部署→日付→売上」の3段階で並べ替えるなら、以下のように書きます。</p>



<pre class="wp-block-code"><code>=SORTBY(A2:D8, B2:B8, 1, D2:D8, 1, C2:C8, -1)</code></pre>



<p>ペアが増えるほど数式は長くなりますが、やっていることはシンプルです。<br>「基準列, 順序」の組を並べているだけですよ。</p>



<h2 class="wp-block-heading"><span id="toc13">SORT関数との違い｜どちらを使うべきか</span></h2>



<p><a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>とSORTBY関数は、どちらもデータを並べ替える関数です。<br>用途に応じて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>SORT関数</th><th>SORTBY関数</th></tr></thead><tbody><tr><td>基準の指定方法</td><td>列番号（数値）</td><td>列範囲（直接指定）</td></tr><tr><td>複数基準</td><td>不可（1つだけ）</td><td>可（ペアで追加）</td></tr><tr><td>列の挿入・削除</td><td>番号がずれる</td><td>範囲参照なので壊れにくい</td></tr><tr><td>列方向ソート</td><td>TRUE指定で可能</td><td>不可（行方向のみ）</td></tr><tr><td>配列外の列を基準に</td><td>不可</td><td>可能</td></tr><tr><td>数式の簡潔さ</td><td>引数が少なくシンプル</td><td>基準列ごとに範囲指定が必要</td></tr></tbody></table></figure>



<p><strong>SORT関数が向いているケース</strong>:</p>



<ul class="wp-block-list"><li>基準が1つだけでシンプルな並べ替え</li><li>列方向（横方向）に並べ替えたい場合</li><li>配列の先頭列を基準にする場合（<code>=SORT(範囲)</code> だけで済む）</li></ul>



<p><strong>SORTBY関数が向いているケース</strong>:</p>



<ul class="wp-block-list"><li>複数基準で並べ替えたいとき</li><li>列の挿入・削除が頻繁にある表</li><li>表示範囲の外にある列を基準にしたいとき</li></ul>



<p>迷ったらSORTBY関数を選んでおけば、あとから基準を追加しやすいですよ。</p>



<h2 class="wp-block-heading"><span id="toc14">実務で使えるSORTBY応用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc15">FILTER関数と組み合わせる｜抽出＋並べ替えを一発で</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>でデータを絞り込んでから、SORTBY関数で並べ替えるパターンです。</p>



<p>営業部のデータだけを売上順に表示してみます。</p>



<pre class="wp-block-code"><code>=SORTBY(FILTER(A2:D8, B2:B8=&quot;営業部&quot;), FILTER(C2:C8, B2:B8=&quot;営業部&quot;), -1)</code></pre>



<p>ちょっとむずかしく見えますが、やっていることはシンプルです。<br>FILTER関数で営業部のデータを抽出し、基準列も同じ条件で抽出しています。<br>SORTBY関数は「配列」と「基準配列」の行数が一致する必要があるので、どちらもFILTERで絞るのがポイントです。</p>



<p>結果は以下のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>担当者</th><th>部署</th><th>売上金額</th><th>日付</th></tr></thead><tbody><tr><td>高橋</td><td>営業部</td><td>550,000</td><td>2024/4/3</td></tr><tr><td>佐藤</td><td>営業部</td><td>480,000</td><td>2024/4/5</td></tr><tr><td>伊藤</td><td>営業部</td><td>410,000</td><td>2024/4/8</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>SORT関数でも <code>=SORT(FILTER(A2:D8, B2:B8="営業部"), 3, -1)</code> と書けます。基準が1つならこちらのほうがシンプルですよ。</strong></p></blockquote>



<h3 class="wp-block-heading"><span id="toc16">SORTBY＋PHONETIC関数で五十音順に並べ替える</span></h3>



<p>SORTBY関数は漢字をUnicodeのコードポイント順で比較します。<br>つまり、日本語の名前を並べ替えても五十音順にはなりません。</p>



<p>五十音順にするには、<a href="https://mashukabu.com/excel-function-howto-use-phonetic/">PHONETIC関数</a>と組み合わせます。</p>



<pre class="wp-block-code"><code>=SORTBY(A2:D8, PHONETIC(A2:A8), 1)</code></pre>



<p>PHONETIC関数がセルのふりがな情報を取り出します。<br>SORTBY関数がそのふりがなを基準に昇順で並べ替えます。</p>



<p>ただし、CSVから取り込んだデータやコピペしたデータにはふりがな情報がありません。<br>その場合は、対象セルを選択して <code>Shift + Alt + ↑</code> を押して手動でふりがなを設定してください。</p>



<h3 class="wp-block-heading"><span id="toc17">VSTACK＋SORTBYで複数シートを統合して並べ替え</span></h3>



<p>月ごとにシートが分かれているデータを1つにまとめて並べ替えるパターンです。<br><a href="https://mashukabu.com/excel-function-howto-use-vstack/">VSTACK関数</a>でデータを縦に結合してからSORTBYで並べ替えます。</p>



<pre class="wp-block-code"><code>=SORTBY(VSTACK(Sheet1!A2:D8, Sheet2!A2:D8), VSTACK(Sheet1!C2:C8, Sheet2!C2:C8), -1)</code></pre>



<p>VSTACK関数でデータ全体と基準列の両方を結合するのがポイントです。<br>複数シートのデータを手作業でコピペする必要がなくなりますよ。</p>



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



<p>SORTBY関数で困ったときは、以下の表を確認してみてください。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#SPILL! エラー</td><td>スピル先のセルが空でない</td><td>展開先のセルを空にする。結合セルも解除する</td></tr><tr><td>#VALUE! エラー</td><td>基準配列が複数列になっている</td><td>基準配列は1列（または1行）のみに修正する</td></tr><tr><td>#VALUE! エラー</td><td>並べ替え順序が1/-1以外</td><td>並べ替え順序を1（昇順）か-1（降順）に修正する</td></tr><tr><td>#VALUE! エラー</td><td>配列と基準配列のサイズが不一致</td><td>配列の行数と基準配列の行数を揃える</td></tr><tr><td>#NAME? エラー</td><td>関数が使えないバージョン</td><td>Microsoft 365またはExcel 2021以降にアップデートする</td></tr><tr><td>並び順がおかしい</td><td>数値が文字列として格納されている</td><td><a href="https://mashukabu.com/excel-function-howto-use-value/">VALUE関数</a>で数値に変換してから並べ替える</td></tr><tr><td>日本語が五十音順にならない</td><td>ふりがな情報の不在</td><td>SORTBY＋PHONETIC関数を使う（上記参照）</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>最も多いのは「配列と基準配列のサイズ不一致」によるエラーです。FILTER関数と組み合わせるときは、データ全体と基準列の両方に同じFILTER条件を適用してください。</strong></p></blockquote>



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



<p>この記事では、ExcelのSORTBY関数の使い方を解説しました。<br>ポイントをおさらいしておきましょう。</p>



<ul class="wp-block-list"><li>SORTBY関数は、基準にする列を<strong>範囲で直接指定</strong>して並べ替える関数</li><li>基準と順序のペアを追加すれば<strong>複数キー</strong>で並べ替えられる</li><li>配列の外にある列も基準に使える</li><li>列の挿入・削除に強く、数式が壊れにくい</li><li><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>と組み合わせると抽出＋並べ替えが一発</li><li>日本語の五十音順には<a href="https://mashukabu.com/excel-function-howto-use-phonetic/">PHONETIC関数</a>との組み合わせが必要</li><li>Microsoft 365 / Excel 2021以降で利用可能</li></ul>



<p>基準が1つだけなら<a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>のほうがシンプルです。<br>でも複数条件で並べ替えたいなら、SORTBY関数を使ってください。<br>まずは「部署→売上」のような2キー並べ替えから試してみてくださいね。</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/excel-function-howto-use-sort/">SORT関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-unique/">UNIQUE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-vstack/">VSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-phonetic/">PHONETIC関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-value/">VALUE関数の使い方</a></li><li><a href="https://mashukabu.com/modern-excel-explanation/">モダンExcel解説</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-sortby/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのDROP関数の使い方｜行列を削除</title>
		<link>https://mashukabu.com/spreadsheet-drop-function/</link>
					<comments>https://mashukabu.com/spreadsheet-drop-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:36:13 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DROP関数]]></category>
		<category><![CDATA[TAKE関数]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[行列を削除]]></category>
		<category><![CDATA[配列操作]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4877</guid>

					<description><![CDATA[スプレッドシートのDROP関数で配列から行・列を削除する方法を解説。先頭・末尾の削除、FILTER結果のヘッダー除去、TAKE関数との違い・使い分けまで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p>スプレッドシートで表を加工するとき、先頭のヘッダー行や末尾の合計行を除外したいことってありますよね。手作業で削除すると元データまで消えてしまうし、毎回範囲を調整するのも面倒です。</p>



<p>DROP関数を使えば、配列の先頭や末尾から指定した数の行・列を削除して、残りのデータだけを取り出せます。元データはそのまま残るので安心です。</p>



<p>この記事では、DROP関数の基本的な使い方から、FILTER関数との組み合わせ、TAKE関数との違いまでわかりやすく解説します。</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">スプレッドシートのDROP関数とは？</a><ol><li><a href="#toc2" tabindex="0">DROP関数の基本構文</a></li></ol></li><li><a href="#toc3" tabindex="0">DROP関数の基本的な使い方</a><ol><li><a href="#toc4" tabindex="0">サンプルデータ</a></li><li><a href="#toc5" tabindex="0">先頭の行を削除する</a></li><li><a href="#toc6" tabindex="0">末尾の行を削除する</a></li><li><a href="#toc7" tabindex="0">列を削除する</a></li><li><a href="#toc8" tabindex="0">行と列を同時に削除する</a></li></ol></li><li><a href="#toc9" tabindex="0">DROP関数の実務活用パターン</a><ol><li><a href="#toc10" tabindex="0">パターン1: FILTER結果からヘッダー行を除去する</a></li><li><a href="#toc11" tabindex="0">パターン2: 集計行を除いてデータだけ取り出す</a></li><li><a href="#toc12" tabindex="0">パターン3: 直近N件を除いた過去データを抽出する</a></li><li><a href="#toc13" tabindex="0">パターン4: DROP + TAKEで中間のデータだけ抽出する</a></li><li><a href="#toc14" tabindex="0">パターン5: VSTACK結合後にヘッダーの重複を除去する</a></li></ol></li><li><a href="#toc15" tabindex="0">TAKE関数との違い・使い分け</a></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc17" tabindex="0">まとめ</a><ol><li><a href="#toc18" tabindex="0">この記事で紹介した関数・関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p>DROP関数（読み方: ドロップ関数）は、配列やセル範囲から<strong>先頭または末尾の行・列を削除</strong>して、残りのデータを返す関数です。「Drop（落とす・除外する）」が名前の由来です。</p>



<p>たとえば、10行のデータから先頭2行を削除して残り8行だけを取り出すことができます。元データと数式でつながっているため、元データが更新されれば結果も自動で反映されますよ。</p>



<p>DROP関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>配列の先頭からN行を削除する（正の数を指定）</li><li>配列の末尾からN行を削除する（負の数を指定）</li><li>列方向の削除もできる（第3引数を使用）</li><li>行と列を同時に削除することもできる</li></ul>



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



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



<pre class="wp-block-code"><code>=DROP(配列, 行数, [列数])</code></pre>



<p>カッコの中に、対象の範囲と削除する行数・列数を指定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>配列</td><td>必須</td><td>削除対象のセル範囲または配列</td></tr><tr><td>行数</td><td>必須</td><td>削除する行数。正の数で先頭から、負の数で末尾から削除</td></tr><tr><td>列数</td><td>任意</td><td>削除する列数。正の数で左から、負の数で右から削除</td></tr></tbody></table></figure>



<p>第2引数（行数）の符号で削除方向が決まります。正の数なら先頭から、負の数なら末尾から削除します。第3引数（列数）も同じルールです。行の削除をスキップして列だけ削除したい場合は、行数に0を指定してくださいね。</p>



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



<p>ここでは、売上データからDROP関数で行や列を削除する例を紹介します。</p>



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



<p>A1:D7に以下のデータが入っているとします。</p>



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



<h3 class="wp-block-heading"><span id="toc5">先頭の行を削除する</span></h3>



<p>ヘッダー行（1行目）を削除して、データ部分だけを取り出します。出力先のセル（たとえばF1）に以下の数式を入力して、Enterを押します。</p>



<pre class="wp-block-code"><code>=DROP(A1:D7, 1)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>F</th><th>G</th><th>H</th><th>I</th></tr></thead><tbody><tr><td>1</td><td>4/1</td><td>佐藤</td><td>商品A</td><td>50,000</td></tr><tr><td>2</td><td>4/2</td><td>田中</td><td>商品B</td><td>30,000</td></tr><tr><td>3</td><td>4/3</td><td>鈴木</td><td>商品C</td><td>45,000</td></tr><tr><td>4</td><td>4/4</td><td>高橋</td><td>商品A</td><td>60,000</td></tr><tr><td>5</td><td>4/5</td><td>伊藤</td><td>商品B</td><td>35,000</td></tr><tr><td>6</td><td>4/6</td><td>佐藤</td><td>商品C</td><td>55,000</td></tr></tbody></table></figure>



<p>第2引数に「1」を指定したので、先頭1行（ヘッダー行）が削除され、データ部分だけが出力されました。「2」にすれば先頭2行が削除されます。</p>



<h3 class="wp-block-heading"><span id="toc6">末尾の行を削除する</span></h3>



<p>末尾から削除するには、第2引数に負の数を指定します。</p>



<pre class="wp-block-code"><code>=DROP(A1:D7, -2)</code></pre>



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



<p>「-2」を指定したので、末尾2行（5行目・6行目のデータ）が削除されました。合計行や集計行を除外したいときに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc7">列を削除する</span></h3>



<p>列方向の削除には第3引数を使います。行の削除をスキップするには、行数に0を指定します。</p>



<pre class="wp-block-code"><code>=DROP(A1:D7, 0, 1)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>F</th><th>G</th><th>H</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>60,000</td></tr><tr><td>6</td><td>伊藤</td><td>商品B</td><td>35,000</td></tr><tr><td>7</td><td>佐藤</td><td>商品C</td><td>55,000</td></tr></tbody></table></figure>



<p>行数を0にして列数を1に指定したので、左端1列（日付列）だけが削除されました。右端から削除したい場合は「-1」のように負の数を使います。</p>



<h3 class="wp-block-heading"><span id="toc8">行と列を同時に削除する</span></h3>



<p>行と列を同時に削除することもできます。</p>



<pre class="wp-block-code"><code>=DROP(A1:D7, 1, 1)</code></pre>



<p>先頭1行（ヘッダー）と左端1列（日付）を同時に削除します。ヘッダーと不要な列をまとめて除去したいときに、1つの数式で済むので効率的ですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc10">パターン1: FILTER結果からヘッダー行を除去する</span></h3>



<p><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>で列全体を対象にフィルターをかけると、ヘッダー行まで結果に含まれてしまうことがあります。DROP関数で先頭1行を除去しましょう。</p>



<pre class="wp-block-code"><code>=DROP(FILTER(A:D, C:C=&quot;商品A&quot;), 1)</code></pre>



<p>FILTER関数の結果をそのままDROPに渡して、先頭1行（ヘッダー）を削除しています。数式もシンプルで読みやすいですよね。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン2: 集計行を除いてデータだけ取り出す</span></h3>



<p>表の最終行に合計行がある場合、データ部分だけを取り出せます。</p>



<pre class="wp-block-code"><code>=DROP(A2:D8, -1)</code></pre>



<p>末尾1行を削除するだけで、集計行を除いた純粋なデータが手に入ります。<a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>や<a href="https://mashukabu.com/spreadsheet-unique-function/">UNIQUE関数</a>に渡す前処理として使うと、集計行が混ざる事故を防げますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン3: 直近N件を除いた過去データを抽出する</span></h3>



<p>売上データを日付の新しい順に並べ替えて、直近3件を除いた残りを取り出します。</p>



<pre class="wp-block-code"><code>=DROP(SORT(A2:D20, 1, FALSE), 3)</code></pre>



<p><a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>で日付の降順に並べ替えたあと、DROPで先頭3行（直近3件）を削除しています。「並べ替えてから先頭を切る」という2ステップで考えるとわかりやすいです。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン4: DROP + TAKEで中間のデータだけ抽出する</span></h3>



<p>先頭と末尾の両方を除外して、中間部分だけを取り出すことができます。</p>



<pre class="wp-block-code"><code>=TAKE(DROP(A2:D100, 10), 10)</code></pre>



<p>先頭10行を削除したあと、そこから10行だけ取り出します。つまり11行目から20行目が返ります。ページネーションのように特定範囲のデータを取り出したいときに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc14">パターン5: VSTACK結合後にヘッダーの重複を除去する</span></h3>



<p><a href="https://mashukabu.com/spreadsheet-vstack-function/">VSTACK関数</a>で複数の表を縦に結合すると、2つ目以降のヘッダーが重複することがあります。</p>



<pre class="wp-block-code"><code>=VSTACK(Sheet1!A1:D4, DROP(Sheet2!A1:D4, 1))</code></pre>



<p>2つ目の表をDROPでヘッダー除去してからVSTACKに渡しています。結合前にヘッダーを落とすことで、きれいな一覧表が完成しますよ。</p>



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



<p>DROP関数には、ペアとなるTAKE関数があります。どちらも配列のサイズを縮小する関数ですが、アプローチが正反対です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>DROP関数</th><th>TAKE関数</th></tr></thead><tbody><tr><td>動作</td><td>指定した行・列を<strong>削除</strong>して残りを返す</td><td>指定した行・列を<strong>取り出して</strong>返す</td></tr><tr><td>構文</td><td><code>=DROP(配列, 行数, [列数])</code></td><td><code>=TAKE(配列, 行数, [列数])</code></td></tr><tr><td>引数の構造</td><td>完全に同じ</td><td>完全に同じ</td></tr><tr><td>正の数の意味</td><td>先頭から削除</td><td>先頭から取得</td></tr><tr><td>負の数の意味</td><td>末尾から削除</td><td>末尾から取得</td></tr><tr><td>結果</td><td>指定した部分を<strong>除いた</strong>残り</td><td>指定した部分<strong>だけ</strong></td></tr></tbody></table></figure>



<p>同じデータに対して、DROPとTAKEの結果を比べてみましょう。</p>



<pre class="wp-block-code"><code>=DROP(A1:A10, 3)   → 4行目〜10行目が返る（先頭3行を削除）
=TAKE(A1:A10, 3)   → 1行目〜3行目が返る（先頭3行を取得）</code></pre>



<p>DROPが返す部分とTAKEが返す部分は、ちょうど補い合う関係です。元の配列をDROPの結果とTAKEの結果に分割しているイメージですね。</p>



<p>使い分けの目安は次のとおりです。</p>



<ul class="wp-block-list"><li><strong>ヘッダー行や合計行を除外したい</strong> → DROP関数（「不要な行を消す」が直感的）</li><li><strong>上位N件だけ取り出したい</strong> → TAKE関数（「N件取る」が直感的）</li><li><strong>中間レコードの抽出</strong> → DROP + TAKEの組み合わせ</li></ul>



<p>迷ったときは「自分がやりたい操作は消す？取る？」と考えてみてください。意図が伝わりやすい方を選ぶと、数式が読みやすくなりますよ。</p>



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



<p>DROP関数はシンプルですが、削除する行数の指定を間違えるとエラーになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#CALC!</code></td><td>削除する行数が配列の行数以上になった</td><td>削除行数を配列の行数より小さくしてください</td></tr><tr><td><code>#VALUE!</code></td><td>行数・列数に数値以外（文字列など）を指定した</td><td>引数が数値になっているか確認してください</td></tr><tr><td><code>#REF!</code></td><td>出力先のセルに既にデータがある</td><td>出力先の範囲を空にしてください</td></tr><tr><td><code>#NAME?</code></td><td>関数名のスペルミス</td><td>「DROP」のスペルを確認してください</td></tr></tbody></table></figure>



<p>特に注意したいのが <code>#CALC!</code> エラーです。たとえば5行しかないデータに <code>=DROP(A1:A5, 5)</code> と指定すると、全行が削除されて結果が空になるためエラーが発生します。</p>



<p>削除前に行数を確認する方法で回避できます。</p>



<pre class="wp-block-code"><code>=IF(ROWS(A1:D10)&gt;1, DROP(A1:D10, 1), A1:D10)</code></pre>



<p><a href="https://mashukabu.com/spreadsheet-rows-function/">ROWS関数</a>で行数を取得し、削除しても行が残る場合だけDROPを実行しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>IFERRORで囲む方法もありますが、他のエラーまで隠してしまう点に注意してください。原因を特定しやすくするには、IF+ROWSの組み合わせがおすすめです。</p></blockquote>



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



<p>DROP関数は、配列から不要な行・列を削除して残りのデータを返す関数です。正の数で先頭から、負の数で末尾から削除できるシンプルな仕組みです。</p>



<p>この記事のポイントをおさらいしておきましょう。</p>



<ul class="wp-block-list"><li>DROP関数は <code>=DROP(配列, 行数)</code> で、先頭または末尾の行を削除する</li><li>正の数で先頭から削除、負の数で末尾から削除。符号を変えるだけで方向が切り替わる</li><li>第3引数を指定すれば、列方向の削除や行と列の同時削除もできる</li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>のヘッダー除去や集計行の除外など、前処理として活躍する</li><li>TAKE関数はペア関数で、「削除して残す」のがDROP、「指定した分だけ取り出す」のがTAKE</li><li>削除行数が配列の行数以上になると <code>#CALC!</code> エラー。ROWS関数で事前チェックすると安全</li></ul>



<p>まずは <code>=DROP(A1:D10, 1)</code> のヘッダー行削除から試してみてください。<a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>や<a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>と組み合わせれば、データの前処理がグッと効率的になりますよ。</p>



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



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



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-drop/">ExcelのDROP関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-take-function/">スプレッドシートのTAKE関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-expand-function/">スプレッドシートのEXPAND関数の使い方</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-vstack-function/">スプレッドシートのVSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-rows-function/">スプレッドシートのROWS関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-transpose-function/">スプレッドシートのTRANSPOSE関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-arrayformula-function/">スプレッドシートのARRAYFORMULA関数の使い方</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-drop-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのEXPAND関数の使い方｜配列を拡張</title>
		<link>https://mashukabu.com/spreadsheet-expand-function/</link>
					<comments>https://mashukabu.com/spreadsheet-expand-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:35:45 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DROP関数]]></category>
		<category><![CDATA[EXPAND関数]]></category>
		<category><![CDATA[TAKE関数]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[配列拡張]]></category>
		<category><![CDATA[配列操作]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4869</guid>

					<description><![CDATA[スプレッドシートのEXPAND関数で配列を拡張する方法を解説。構文・引数の詳細、pad_withの設定、FILTER結果の固定サイズ化やVSTACK前の列数正規化など実務パターン、DROP・TAKE関数との違いまで紹介します。]]></description>
										<content:encoded><![CDATA[
<p>FILTER関数やVSTACK関数の結果って、条件によって行数がバラバラになりますよね。そのまま横に並べるとレイアウトが崩れて困ることもあるはずです。</p>



<p>EXPAND関数を使えば、配列を指定したサイズに自動で拡張できます。不足分には好きな値を埋められるので、サイズの違う結果をきれいに揃えられますよ。</p>



<p>この記事では、EXPAND関数の基本的な使い方から実務活用パターンまでまとめて紹介します。DROP・TAKE関数との違いも整理していますよ。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-3" checked><label class="toc-title" for="toc-checkbox-3">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのEXPAND関数とは？</a><ol><li><a href="#toc2" tabindex="0">EXPAND関数の基本構文</a></li></ol></li><li><a href="#toc3" tabindex="0">EXPAND関数の基本的な使い方</a><ol><li><a href="#toc4" tabindex="0">サンプルデータ</a></li><li><a href="#toc5" tabindex="0">行方向に拡張する</a></li><li><a href="#toc6" tabindex="0">行と列の両方向に拡張する</a></li><li><a href="#toc7" tabindex="0">列方向だけ拡張する</a></li><li><a href="#toc8" tabindex="0">pad_withの指定による違い</a></li></ol></li><li><a href="#toc9" tabindex="0">EXPAND関数の実務活用パターン</a><ol><li><a href="#toc10" tabindex="0">パターン1: FILTER結果を固定サイズに揃える</a></li><li><a href="#toc11" tabindex="0">パターン2: VSTACKで列数が異なるテーブルを結合する</a></li><li><a href="#toc12" tabindex="0">パターン3: DROP + EXPANDでヘッダー除去とサイズ統一を同時に行う</a></li><li><a href="#toc13" tabindex="0">パターン4: HSTACKで行数が異なるテーブルを横結合する</a></li><li><a href="#toc14" tabindex="0">パターン5: SEQUENCE + EXPANDで連番付きテンプレートを作る</a></li></ol></li><li><a href="#toc15" tabindex="0">DROP・TAKE関数との違い・使い分け</a></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc17" tabindex="0">まとめ</a><ol><li><a href="#toc18" tabindex="0">この記事で紹介した関数・関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p>EXPAND関数（読み方: エクスパンド関数）は、配列やセル範囲を指定した行数・列数に<strong>拡張</strong>する関数です。「Expand（拡張する・広げる）」が名前の由来です。</p>



<p>たとえば、3行2列の表を10行3列に広げたいとき、一発で拡張できます。拡張部分には空白や0など、好きな値を埋められますよ。</p>



<p>EXPAND関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>配列を指定した行数に拡張する</li><li>列方向の拡張もできる（第3引数を使用）</li><li>行と列を同時に拡張することもできる</li><li>拡張部分に埋める値を自由に指定できる（第4引数）</li></ul>



<p>EXPANDという名前のとおり「拡大専用」の関数です。配列を小さくすることはできません。縮小したい場合は<a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>を使いましょう。</p>



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



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



<pre class="wp-block-code"><code>=EXPAND(配列, 行, [列], [pad_with])</code></pre>



<p>カッコの中に、対象の範囲と拡張後のサイズを指定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>配列</td><td>必須</td><td>拡張したいセル範囲または配列</td></tr><tr><td>行</td><td>必須</td><td>拡張後の総行数（元の行数以上を指定）</td></tr><tr><td>列</td><td>任意</td><td>拡張後の総列数（省略時は列方向の拡張なし）</td></tr><tr><td>pad_with</td><td>任意</td><td>拡張部分に埋める値（省略時は#N/A）</td></tr></tbody></table></figure>



<p>第2引数（行）と第3引数（列）には、元の配列のサイズ以上の値を指定します。元のサイズより小さい値を指定すると#VALUE!エラーになるので注意してくださいね。</p>



<p>第4引数（pad_with）は省略すると拡張部分に#N/Aが表示されます。実務では&#8221;&#8221;（空文字列）か0を指定しておくのがおすすめです。</p>



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



<p>ここでは、売上データを使ってEXPAND関数で配列を拡張する例を紹介します。</p>



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



<p>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>



<h3 class="wp-block-heading"><span id="toc5">行方向に拡張する</span></h3>



<p>3行のデータ部分を8行に拡張してみましょう。出力先のセル（たとえばE1）に以下の数式を入力します。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:C4, 8, 3, &quot;&quot;)</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>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>6</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>7</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>8</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></tbody></table></figure>



<p>元の4行3列を8行3列に拡張しました。5行目以降は空白で埋められています。pad_withに&#8221;&#8221;を指定したので、見た目はスッキリですね。</p>



<h3 class="wp-block-heading"><span id="toc6">行と列の両方向に拡張する</span></h3>



<p>行と列を同時に拡張することもできます。A1:C4（4行3列）を6行5列にしてみましょう。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:C4, 6, 5, 0)</code></pre>



<p>元のデータの右側と下側に、0で埋められたセルが追加されます。pad_withに0を指定したので、拡張部分にはすべて0が入ります。</p>



<h3 class="wp-block-heading"><span id="toc7">列方向だけ拡張する</span></h3>



<p>列方向だけ拡張したい場合は、行の引数に元の行数をそのまま指定します。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:C4, 4, 6, &quot;&quot;)</code></pre>



<p>行数は4のまま変えず、列数だけ3列から6列に拡張しています。</p>



<h3 class="wp-block-heading"><span id="toc8">pad_withの指定による違い</span></h3>



<p>pad_with引数の設定で、拡張部分の表示が変わります。</p>



<figure class="wp-block-table"><table><thead><tr><th>pad_withの指定</th><th>拡張部分の表示</th><th>備考</th></tr></thead><tbody><tr><td>省略</td><td>#N/A</td><td>エラー値として扱われる</td></tr><tr><td>&#8220;&#8221;</td><td>空白表示</td><td>空文字列（ISBLANKはFALSE）</td></tr><tr><td>0</td><td>0</td><td>数値のゼロとして扱われる</td></tr><tr><td>&#8220;-&#8220;</td><td>&#8211;</td><td>テキストとして表示される</td></tr></tbody></table></figure>



<p>pad_withを省略すると、拡張部分の#N/Aが他の数式にも連鎖します。特別な理由がなければ&#8221;&#8221;か0を指定してください。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>pad_withに&#8221;&#8221;を指定したセルは見た目は空白ですが、空文字列が入っています。ISBLANK関数で判定するとFALSEが返る点に注意してくださいね。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc10">パターン1: FILTER結果を固定サイズに揃える</span></h3>



<p><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>の結果は、条件に合うデータの件数で行数が変わります。複数のFILTER結果を横に並べると行数がバラバラでレイアウトが崩れがちです。</p>



<p>EXPAND関数で結果を固定サイズに揃えましょう。</p>



<pre class="wp-block-code"><code>=EXPAND(FILTER(A2:C100, B2:B100=&quot;営業部&quot;), 10, 3, &quot;&quot;)</code></pre>



<p>FILTER関数の結果をそのままEXPANDに渡して、10行3列に拡張しています。結果が3件でも8件でも、常に10行分の表示領域を確保できますよ。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン2: VSTACKで列数が異なるテーブルを結合する</span></h3>



<p><a href="https://mashukabu.com/spreadsheet-vstack-function/">VSTACK関数</a>で列数が異なるテーブルを縦結合すると、不足部分がエラーになることがあります。</p>



<p>EXPAND関数で列数を揃えてから結合しましょう。</p>



<pre class="wp-block-code"><code>=VSTACK(EXPAND(A1:B5, 5, 3, &quot;&quot;), D1:F5)</code></pre>



<p>A1:B5（2列）を3列に拡張してからVSTACKで結合しています。不足部分が空白で埋まるので、きれいな一覧表が完成しますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン3: DROP + EXPANDでヘッダー除去とサイズ統一を同時に行う</span></h3>



<p><a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>で不要な行を削除してから、EXPAND関数でサイズを揃える2段階の整形パターンです。</p>



<pre class="wp-block-code"><code>=EXPAND(DROP(A1:D20, 1), 10, 4, &quot;&quot;)</code></pre>



<p>DROPで先頭1行（ヘッダー）を削除し、EXPANDで10行4列に揃えています。レポートの表サイズを統一したいときに便利です。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン4: HSTACKで行数が異なるテーブルを横結合する</span></h3>



<p><a href="https://mashukabu.com/spreadsheet-hstack-function/">HSTACK関数</a>で行数が異なるテーブルを横に結合するときも、EXPAND関数で行数を揃えてから結合できます。</p>



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



<p>どちらのテーブルも5行2列に揃えてからHSTACKで結合しています。行数の違いによるエラーを防げますよ。</p>



<h3 class="wp-block-heading"><span id="toc14">パターン5: SEQUENCE + EXPANDで連番付きテンプレートを作る</span></h3>



<p>SEQUENCE関数で連番を生成し、EXPAND関数で入力欄を確保するテクニックです。</p>



<pre class="wp-block-code"><code>=HSTACK(SEQUENCE(20), EXPAND({&quot;&quot;}, 20, 3, &quot;&quot;))</code></pre>



<p>SEQUENCE(20)で1〜20の連番を生成し、空白を20行3列に拡張して入力欄を作成しています。<a href="https://mashukabu.com/spreadsheet-hstack-function/">HSTACK関数</a>で連番と入力欄を横に結合すれば、連番付きの空テンプレートが完成します。</p>



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



<p>EXPAND関数には、配列のサイズを変更する仲間としてDROP関数とTAKE関数があります。3つの関数を比較してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>EXPAND関数</th><th>DROP関数</th><th>TAKE関数</th></tr></thead><tbody><tr><td>機能</td><td>配列を<strong>拡大</strong>する</td><td>先頭/末尾を<strong>削除</strong>する</td><td>先頭/末尾を<strong>取り出す</strong></td></tr><tr><td>配列サイズ</td><td>大きくなる</td><td>小さくなる</td><td>小さくなる</td></tr><tr><td>引数の意味</td><td>拡張後の<strong>総行列数</strong></td><td>削除する<strong>行列数</strong></td><td>取得する<strong>行列数</strong></td></tr><tr><td>負の数の指定</td><td>不可（#VALUE!エラー）</td><td>可（末尾から削除）</td><td>可（末尾から取得）</td></tr><tr><td>pad_with引数</td><td>あり（拡張部分の値）</td><td>なし</td><td>なし</td></tr><tr><td>代表的な使い方</td><td>FILTER結果の固定サイズ化</td><td>ヘッダー行の除去</td><td>上位N件の取得</td></tr></tbody></table></figure>



<p>DROPとTAKEは配列を縮小する関数ですが、アプローチが逆です。DROPは「不要な部分を捨てる」、TAKEは「必要な部分だけ取る」です。EXPANDはこの2つとは方向が逆で、配列を大きくする関数です。</p>



<p>使い分けの目安は次のとおりです。</p>



<ul class="wp-block-list"><li><strong>結果のサイズを統一したい</strong> → EXPAND関数（不足分を埋めて整形）</li><li><strong>ヘッダー行や合計行を除外したい</strong> → <a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>（「不要な行を消す」が直感的）</li><li><strong>上位N件だけ取り出したい</strong> → TAKE関数（「N件取る」が直感的）</li><li><strong>ヘッダー除去してからサイズを揃えたい</strong> → DROP + EXPANDの組み合わせ</li></ul>



<p>迷ったときは「配列を大きくしたい？ 小さくしたい？」と考えてみてください。大きくするならEXPAND、小さくするならDROPかTAKEです。</p>



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



<p>EXPAND関数で発生するエラーをまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#VALUE!</code></td><td>元の配列より小さいサイズを指定した</td><td>元のサイズ以上の値を指定する。縮小は<a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>を使う</td></tr><tr><td><code>#VALUE!</code></td><td>行・列に負の値や小数を指定した</td><td>正の整数のみ指定する</td></tr><tr><td><code>#N/A</code></td><td>pad_with引数を省略した</td><td>pad_withに&#8221;&#8221;や0を指定する</td></tr><tr><td><code>#REF!</code></td><td>出力先のセルに既にデータがある</td><td>出力先の範囲を空にする</td></tr><tr><td><code>#NAME?</code></td><td>関数名のスペルミス</td><td>「EXPAND」のスペルを確認する</td></tr></tbody></table></figure>



<p>特に注意したいのが <code>#VALUE!</code> エラーです。EXPAND関数は拡大専用なので、元の配列より小さいサイズは指定できません。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:C5, 3, 2, &quot;&quot;)</code></pre>



<p>A1:C5は5行3列です。3行2列にしようとすると#VALUE!エラーになります。縮小したい場合は<a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>を使いましょう。</p>



<p>もうひとつよくあるのが <code>#N/A</code> です。pad_with引数を省略すると拡張部分に#N/Aが表示されます。これは仕様どおりの動作ですが、他の数式にもエラーが連鎖します。pad_withに&#8221;&#8221;か0を指定しておくのがおすすめですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>IFERRORで#N/Aを処理する方法もありますが、他のエラーまで隠してしまいます。最初からpad_withを指定しておく方が安全です。</p></blockquote>



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



<p>EXPAND関数は、配列を指定したサイズに拡張する関数です。FILTER関数やVSTACK関数と組み合わせると、サイズの異なる結果をきれいに揃えられます。</p>



<p>この記事のポイントをおさらいしておきましょう。</p>



<ul class="wp-block-list"><li>EXPAND関数は <code>=EXPAND(配列, 行, [列], [pad_with])</code> で、配列を拡張する</li><li>pad_with引数を省略すると拡張部分に#N/Aが表示される。&#8221;&#8221;や0を指定するのがおすすめ</li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>の結果を固定サイズに揃えたり、<a href="https://mashukabu.com/spreadsheet-vstack-function/">VSTACK関数</a>の結合前に列数を正規化したりできる</li><li>DROP関数は縮小、EXPAND関数は拡大で、方向が正反対のペア関数</li><li><a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>でヘッダーを除去してからEXPANDでサイズを揃える組み合わせが便利</li><li>元の配列より小さいサイズを指定すると#VALUE!エラー。縮小にはDROP関数を使う</li></ul>



<p>まずは <code>=EXPAND(A1:C4, 10, 3, "")</code> のように、表を固定サイズに揃えるところから試してみてください。<a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>や<a href="https://mashukabu.com/spreadsheet-vstack-function/">VSTACK関数</a>と組み合わせれば、配列操作がグッと効率的になりますよ。</p>



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



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



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-expand/">ExcelのEXPAND関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-drop-function/">スプレッドシートのDROP関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-take-function/">スプレッドシートのTAKE関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-filter-function/">スプレッドシートのFILTER関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-vstack-function/">スプレッドシートのVSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-hstack-function/">スプレッドシートのHSTACK関数の使い方</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></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-expand-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのTAKE関数の使い方｜行列を取得</title>
		<link>https://mashukabu.com/spreadsheet-take-function/</link>
					<comments>https://mashukabu.com/spreadsheet-take-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:29:56 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DROP関数]]></category>
		<category><![CDATA[TAKE関数]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[行列を取得]]></category>
		<category><![CDATA[配列操作]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4749</guid>

					<description><![CDATA[スプレッドシートのTAKE関数で配列から行・列を取り出す方法を解説。先頭・末尾の取得、SORT結果から上位N件の抽出、DROP関数との違い・使い分けまで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p>スプレッドシートで売上データから上位3件だけを取り出したいこと、ありますよね。SORT関数で並べ替えたあと、手作業で範囲を選び直すのは地味に面倒です。</p>



<p>TAKE関数を使えば、配列の先頭や末尾から指定した数の行・列をサッと取り出せます。元データはそのまま残るので安心です。</p>



<p>この記事では、TAKE関数の基本的な使い方から、SORT関数との組み合わせ、DROP関数との違いまでわかりやすく解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのTAKE関数とは？</a><ol><li><a href="#toc2" tabindex="0">TAKE関数の基本構文</a></li></ol></li><li><a href="#toc3" tabindex="0">TAKE関数の基本的な使い方</a><ol><li><a href="#toc4" tabindex="0">サンプルデータ</a></li><li><a href="#toc5" tabindex="0">先頭の行を取得する</a></li><li><a href="#toc6" tabindex="0">末尾の行を取得する</a></li><li><a href="#toc7" tabindex="0">列を取得する</a></li><li><a href="#toc8" tabindex="0">行と列を同時に取得する</a></li></ol></li><li><a href="#toc9" tabindex="0">TAKE関数の実務活用パターン</a><ol><li><a href="#toc10" tabindex="0">パターン1: SORT結果から上位N件を取り出す</a></li><li><a href="#toc11" tabindex="0">パターン2: UNIQUE結果から先頭だけ取り出す</a></li><li><a href="#toc12" tabindex="0">パターン3: FILTER結果から上位N件を抽出する</a></li><li><a href="#toc13" tabindex="0">パターン4: DROP + TAKEで中間のデータだけ抽出する</a></li><li><a href="#toc14" tabindex="0">パターン5: ヘッダー行だけを取り出してテンプレートにする</a></li></ol></li><li><a href="#toc15" tabindex="0">DROP関数との違い・使い分け</a></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc17" tabindex="0">まとめ</a><ol><li><a href="#toc18" tabindex="0">この記事で紹介した関数・関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p>TAKE関数（読み方: テイク関数）は、配列やセル範囲から<strong>先頭または末尾の行・列を取り出して</strong>返す関数です。「Take（取る・取得する）」が名前の由来です。</p>



<p>たとえば、10行のデータから先頭3行だけを取り出すことができます。元データと数式でつながっているため、元データが更新されれば結果も自動で反映されますよ。</p>



<p>TAKE関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>配列の先頭からN行を取り出す（正の数を指定）</li><li>配列の末尾からN行を取り出す（負の数を指定）</li><li>列方向の取得もできる（第3引数を使用）</li><li>行と列を同時に取得することもできる</li></ul>



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



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



<pre class="wp-block-code"><code>=TAKE(配列, 行数, [列数])</code></pre>



<p>カッコの中に、対象の範囲と取得する行数・列数を指定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>配列</td><td>必須</td><td>取得対象のセル範囲または配列</td></tr><tr><td>行数</td><td>必須</td><td>取得する行数。正の数で先頭から、負の数で末尾から取得</td></tr><tr><td>列数</td><td>任意</td><td>取得する列数。正の数で左から、負の数で右から取得</td></tr></tbody></table></figure>



<p>第2引数（行数）の符号で取得方向が決まります。正の数なら先頭から、負の数なら末尾から取得します。第3引数（列数）も同じルールです。行の取得をスキップして列だけ取得したい場合は、行数に0を指定してくださいね。</p>



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



<p>ここでは、売上データからTAKE関数で行や列を取り出す例を紹介します。</p>



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



<p>A1:D7に以下のデータが入っているとします。</p>



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



<h3 class="wp-block-heading"><span id="toc5">先頭の行を取得する</span></h3>



<p>先頭3行（ヘッダー含む）を取り出します。出力先のセル（たとえばF1）に以下の数式を入力して、Enterを押します。</p>



<pre class="wp-block-code"><code>=TAKE(A1:D7, 3)</code></pre>



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



<p>第2引数に「3」を指定したので、先頭3行が取り出されました。「1」にすればヘッダー行だけが返ります。</p>



<h3 class="wp-block-heading"><span id="toc6">末尾の行を取得する</span></h3>



<p>末尾から取得するには、第2引数に負の数を指定します。</p>



<pre class="wp-block-code"><code>=TAKE(A1:D7, -2)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>F</th><th>G</th><th>H</th><th>I</th></tr></thead><tbody><tr><td>1</td><td>4/5</td><td>伊藤</td><td>商品B</td><td>35,000</td></tr><tr><td>2</td><td>4/6</td><td>佐藤</td><td>商品C</td><td>55,000</td></tr></tbody></table></figure>



<p>「-2」を指定したので、末尾2行が取り出されました。直近のデータだけを確認したいときに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc7">列を取得する</span></h3>



<p>列方向の取得には第3引数を使います。行の取得をスキップするには、行数に0を指定します。</p>



<pre class="wp-block-code"><code>=TAKE(A1:D7, 0, 2)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>F</th><th>G</th></tr></thead><tbody><tr><td>1</td><td>日付</td><td>担当者</td></tr><tr><td>2</td><td>4/1</td><td>佐藤</td></tr><tr><td>3</td><td>4/2</td><td>田中</td></tr><tr><td>4</td><td>4/3</td><td>鈴木</td></tr><tr><td>5</td><td>4/4</td><td>高橋</td></tr><tr><td>6</td><td>4/5</td><td>伊藤</td></tr><tr><td>7</td><td>4/6</td><td>佐藤</td></tr></tbody></table></figure>



<p>行数を0にして列数を2に指定したので、左端2列（日付・担当者）だけが取り出されました。右端から取得したい場合は「-2」のように負の数を使います。</p>



<h3 class="wp-block-heading"><span id="toc8">行と列を同時に取得する</span></h3>



<p>行と列を同時に取得することもできます。</p>



<pre class="wp-block-code"><code>=TAKE(A1:D7, 3, 2)</code></pre>



<p>先頭3行と左端2列を同時に取得します。ヘッダーと必要な列だけをまとめて取り出したいときに、1つの数式で済むので効率的ですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc10">パターン1: SORT結果から上位N件を取り出す</span></h3>



<p>売上データを降順に並べ替えて、上位3件だけを取り出します。</p>



<pre class="wp-block-code"><code>=TAKE(SORT(A2:D7, 4, FALSE), 3)</code></pre>



<p><a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>で売上列（4列目）の降順に並べ替えたあと、TAKEで先頭3行を取り出しています。「並べ替えてから先頭を取る」という2ステップで考えるとわかりやすいです。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン2: UNIQUE結果から先頭だけ取り出す</span></h3>



<p>重複を除いた結果から、先頭の数件だけを取り出せます。</p>



<pre class="wp-block-code"><code>=TAKE(UNIQUE(B2:B7), 3)</code></pre>



<p><a href="https://mashukabu.com/spreadsheet-unique-function/">UNIQUE関数</a>で重複を除いた担当者名から、先頭3件だけを取得しています。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン3: FILTER結果から上位N件を抽出する</span></h3>



<p>条件に合うデータの中から上位N件を取り出します。</p>



<pre class="wp-block-code"><code>=TAKE(SORT(FILTER(A2:D7, C2:C7=&quot;商品A&quot;), 4, FALSE), 2)</code></pre>



<p><a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>で「商品A」だけに絞り、SORT関数で売上降順に並べ替えています。TAKEで上位2件を取り出すことで、条件付きランキングが作れますよ。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン4: DROP + TAKEで中間のデータだけ抽出する</span></h3>



<p>先頭と末尾の両方を除外して、中間部分だけを取り出すことができます。</p>



<pre class="wp-block-code"><code>=TAKE(DROP(A2:D100, 10), 10)</code></pre>



<p><a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>で先頭10行を削除したあと、TAKEで10行だけ取り出します。つまり11行目から20行目が返ります。ページネーションのように特定範囲のデータを取り出したいときに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc14">パターン5: ヘッダー行だけを取り出してテンプレートにする</span></h3>



<p>表のヘッダー行だけを別のシートに取り出して、テンプレートとして再利用できます。</p>



<pre class="wp-block-code"><code>=TAKE(Sheet1!A1:D1, 1)</code></pre>



<p>先頭1行だけを取得するので、ヘッダー構造がそのままコピーされます。元の表でヘッダーを修正すれば、テンプレートにも自動で反映されますよ。</p>



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



<p>TAKE関数には、ペアとなる<a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>があります。どちらも配列のサイズを縮小する関数ですが、アプローチが正反対です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>TAKE関数</th><th>DROP関数</th></tr></thead><tbody><tr><td>動作</td><td>指定した行・列を<strong>取り出して</strong>返す</td><td>指定した行・列を<strong>削除</strong>して残りを返す</td></tr><tr><td>構文</td><td><code>=TAKE(配列, 行数, [列数])</code></td><td><code>=DROP(配列, 行数, [列数])</code></td></tr><tr><td>引数の構造</td><td>完全に同じ</td><td>完全に同じ</td></tr><tr><td>正の数の意味</td><td>先頭から取得</td><td>先頭から削除</td></tr><tr><td>負の数の意味</td><td>末尾から取得</td><td>末尾から削除</td></tr><tr><td>結果</td><td>指定した部分<strong>だけ</strong></td><td>指定した部分を<strong>除いた</strong>残り</td></tr></tbody></table></figure>



<p>同じデータに対して、TAKEとDROPの結果を比べてみましょう。</p>



<pre class="wp-block-code"><code>=TAKE(A1:A10, 3)   → 1行目〜3行目が返る（先頭3行を取得）
=DROP(A1:A10, 3)   → 4行目〜10行目が返る（先頭3行を削除）</code></pre>



<p>TAKEが返す部分とDROPが返す部分は、ちょうど補い合う関係です。元の配列をTAKEの結果とDROPの結果に分割しているイメージですね。</p>



<p>使い分けの目安は次のとおりです。</p>



<ul class="wp-block-list"><li><strong>上位N件だけ取り出したい</strong> → TAKE関数（「N件取る」が直感的）</li><li><strong>ヘッダー行や合計行を除外したい</strong> → <a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>（「不要な行を消す」が直感的）</li><li><strong>中間レコードの抽出</strong> → DROP + TAKEの組み合わせ</li></ul>



<p>迷ったときは「自分がやりたい操作は取る？消す？」と考えてみてください。意図が伝わりやすい方を選ぶと、数式が読みやすくなりますよ。</p>



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



<p>TAKE関数はシンプルですが、取得する行数の指定を間違えるとエラーになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#CALC!</code></td><td>取得する行数が配列の行数を超えた</td><td>取得行数を配列の行数以下にしてください</td></tr><tr><td><code>#VALUE!</code></td><td>行数・列数に数値以外（文字列など）を指定した</td><td>引数が数値になっているか確認してください</td></tr><tr><td><code>#REF!</code></td><td>出力先のセルに既にデータがある</td><td>出力先の範囲を空にしてください</td></tr><tr><td><code>#NAME?</code></td><td>関数名のスペルミス</td><td>「TAKE」のスペルを確認してください</td></tr></tbody></table></figure>



<p>特に注意したいのが <code>#CALC!</code> エラーです。たとえば5行しかないデータに <code>=TAKE(A1:A5, 10)</code> と指定すると、存在しない行を取得しようとしてエラーが発生します。</p>



<p>取得前に行数を確認する方法で回避できます。</p>



<pre class="wp-block-code"><code>=IF(ROWS(A1:D10)&gt;=3, TAKE(A1:D10, 3), A1:D10)</code></pre>



<p><a href="https://mashukabu.com/spreadsheet-rows-function/">ROWS関数</a>で行数を取得し、取得可能な場合だけTAKEを実行しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>IFERRORで囲む方法もありますが、他のエラーまで隠してしまう点に注意してください。原因を特定しやすくするには、IF+ROWSの組み合わせがおすすめです。</p></blockquote>



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



<p>TAKE関数は、配列から指定した行・列を取り出して返す関数です。正の数で先頭から、負の数で末尾から取得できるシンプルな仕組みです。</p>



<p>この記事のポイントをおさらいしておきましょう。</p>



<ul class="wp-block-list"><li>TAKE関数は <code>=TAKE(配列, 行数)</code> で、先頭または末尾の行を取り出す</li><li>正の数で先頭から取得、負の数で末尾から取得。符号を変えるだけで方向が切り替わる</li><li>第3引数を指定すれば、列方向の取得や行と列の同時取得もできる</li><li><a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>と組み合わせれば上位N件の抽出が簡単にできる</li><li><a href="https://mashukabu.com/spreadsheet-drop-function/">DROP関数</a>はペア関数で、「指定した分だけ取り出す」のがTAKE、「削除して残す」のがDROP</li><li>取得行数が配列の行数を超えると <code>#CALC!</code> エラー。ROWS関数で事前チェックすると安全</li></ul>



<p>まずは <code>=TAKE(A1:D10, 3)</code> の先頭3行取得から試してみてください。<a href="https://mashukabu.com/spreadsheet-sort-sortn-sortby/">SORT関数</a>や<a href="https://mashukabu.com/spreadsheet-filter-function/">FILTER関数</a>と組み合わせれば、ランキング表や条件付き抽出がグッと効率的になりますよ。</p>



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



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



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-drop-function/">スプレッドシートのDROP関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-expand-function/">スプレッドシートのEXPAND関数の使い方</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-vstack-function/">スプレッドシートのVSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-rows-function/">スプレッドシートのROWS関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-arrayformula-function/">スプレッドシートのARRAYFORMULA関数の使い方</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-take-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Excel】UNIQUE関数でデータ整理を時短！基本から応用まで徹底解説</title>
		<link>https://mashukabu.com/excel-function-howto-use-unique/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-unique/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 09 Mar 2025 00:06:16 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[UNIQUE関数]]></category>
		<category><![CDATA[スピル]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[重複除外]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1872</guid>

					<description><![CDATA[ExcelのUNIQUE関数の使い方を基本から応用まで解説。重複を除外した一意のリストを作成する方法、SORT関数やFILTER関数との組み合わせパターンも紹介。]]></description>
										<content:encoded><![CDATA[
<p>この記事では、膨大なデータから重複を瞬時に除外し、ユニークな値だけを抽出できるUNIQUE関数について解説します。強力なツールです。  <br>UNIQUE関数の基本から応用まで、実務で即戦力となる使い方を詳しく解説します。  <br>データ処理効率の向上に必須とも言える関数ですので、是非最後までお読みください。</p>



<p>この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>指定したリストから重複を取り除いたリストを作成したい</li></ul>



<ul class="wp-block-list"><li>一覧から一意（ユニーク）の値を取り出したい</li></ul>



<p>「Excel関数？」「聞いた事あるけど何か知らないな？」という方は、<a href="https://mashukabu.com/excel-function/">こちらの記事</a>でエクセル関数について解説していますので先に確認して頂くと理解しやすいと思います。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-5" checked><label class="toc-title" for="toc-checkbox-5">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">UNIQUE関数とは？</a><ol><li><a href="#toc2" tabindex="0">UNIQUE関数の読み方</a></li><li><a href="#toc3" tabindex="0">UNIQUE関数では何ができるの？</a></li></ol></li><li><a href="#toc4" tabindex="0">UNIQUE関数の使い方</a><ol><li><a href="#toc5" tabindex="0">関数の基本構文をマスター</a></li><li><a href="#toc6" tabindex="0">関数の引数について知ろう</a></li><li><a href="#toc7" tabindex="0">実際にやってみよう！実践編</a></li><li><a href="#toc8" tabindex="0">仕事で役立つ便利技！</a></li></ol></li><li><a href="#toc9" tabindex="0">よくあるエラーと解決法</a><ol><li><a href="#toc10" tabindex="0">関数が使えない</a></li><li><a href="#toc11" tabindex="0">「0」が表示される</a></li><li><a href="#toc12" tabindex="0">#CALC!エラーの原因と対策</a></li></ol></li><li><a href="#toc13" tabindex="0">さらなるスキルアップを目指そう！</a></li><li><a href="#toc14" tabindex="0">まとめ</a><ol><li><a href="#toc15" tabindex="0">関数一覧</a></li><li><a href="#toc16" tabindex="0">エラー値についてのまとめ記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">UNIQUE関数とは？</span></h2>



<h3 class="wp-block-heading"><span id="toc2">UNIQUE関数の読み方</span></h3>



<p>読み方は「ユニーク関数」です。</p>



<h3 class="wp-block-heading"><span id="toc3">UNIQUE関数では何ができるの？</span></h3>



<p>UNIQUE関数は、指定した範囲内から重複するデータを自動的に一つにまとめて、ユニークな値（重複していない値）の一覧を返してくれる関数です。  <br>この関数はMicrosoft 365やExcel 2021以降で利用することができます。</p>



<p>例えば、顧客リストから重複なしの顧客名一覧を作成したり、商品コードの一覧から固有の商品だけを抽出したりすることが簡単にできます。  <br>複数人が入力するデータには大文字・小文字や半角・全角のように細かい部分で入力データが異なる場合があります。  <br>UNIQUE関数では文字列の種類が異なる場合も、同一の文字として判定し重複を削除してくれるため、データ抽出前のひと手間も必要ありません。</p>



<p>このような処理をするために複雑な数式の組み合わせや、条件付き書式を用いた手作業でのフィルタリングが必要でしたが、UNIQUE関数ではワンステップで実現できるようになりました。  <br>元のデータが変更されると、UNIQUE関数の結果も自動的に更新されるため、データを抽出し直す必要もありません。表に入力されている様々な値を重複しないように出力する時に便利です。</p>



<h2 class="wp-block-heading"><span id="toc4">UNIQUE関数の使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc5">関数の基本構文をマスター</span></h3>



<p>まずはUNIQUE関数の式をチェックしましょう。  <br>※[]内の引数は省略することができます。</p>



<p>構文</p>



<p><strong>=UNIQUE( 配列 , [列の比較] , [回数指定] )</strong></p>



<p>UNIQUE関数の引数は3つありますが、必ず指定する必要がある引数は「配列」のみです。</p>



<p>使用例</p>



<ol class="wp-block-list"><li>すべての引数を指定する場合  </li></ol>



<p><strong>=UNIQUE(A2:B100,TRUE,TRUE)</strong></p>



<ol class="wp-block-list"><li>最小限の引数のみを指定する場合  </li></ol>



<p><strong>=UNIQUE(A2:B100)</strong></p>



<h3 class="wp-block-heading"><span id="toc6">関数の引数について知ろう</span></h3>



<h4 class="wp-block-heading">第1引数：配列（必須）</h4>



<p>「配列」には重複しないリストを作成する元になる範囲を指定します。</p>



<p>この範囲は、単一の列だけでなく、連続した複数の列を含めることも可能です。  <br>複数の列を指定した場合、各行の組み合わせがユニークかどうかを判断してくれます。</p>



<h4 class="wp-block-heading">第2引数：列の比較（省略可能）</h4>



<p>「列の比較」には比較する方法をTRUEかFALSEで指定する事ができます。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>列の比較</th><th>動作の説明</th></tr></thead><tbody><tr><td>&nbsp;</td><td>FALSE(省略時)</td><td>列を比較し、一意の行を返します。</td></tr></tbody></table></figure>



<p>見出しが1行目に記載されている、縦に並んだリストを扱う場合はこの引数を省略または FALSE に設定します。もし、A列が見出しになっている、横に並んだリストを扱う場合のみTRUEにしましょう。</p>



<h4 class="wp-block-heading">第3引数：回数指定（省略可能）</h4>



<p>「回数指定」引数は、「ユニーク」の判定方法を指定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>列の比較</th><th>動作の説明</th></tr></thead><tbody><tr><td>&nbsp;</td><td>FALSE(省略時)</td><td>範囲内での出現回数に関係なく、すべての重複しない値を返します。</td></tr></tbody></table></figure>



<p>例えば、リンゴ、バナナ、リンゴ、オレンジ、バナナというデータがある場合、  <br>FALSEを指定した場合に返される値は「リンゴ、バナナ、オレンジ」ですが、  <br>TRUEを指定した場合に返される値は「オレンジ」のみです。</p>



<h3 class="wp-block-heading"><span id="toc7">実際にやってみよう！実践編</span></h3>



<h4 class="wp-block-heading">重複していないデータの抽出</h4>



<p>表の項目から重複していない値を抽出する関数を作成しましょう。</p>



<p>例えば、A2:A100に商品名のリストがあり、その中から重複のない商品名のリストを作成したい場合は次のように関数を使います。</p>



<pre class="wp-block-code"><code>=UNIQUE(A2:A100)</code></pre>



<h4 class="wp-block-heading">1度だけ出現する値の抽出</h4>



<p>データの中から、一度しか出現していないデータを抽出します。</p>



<pre class="wp-block-code"><code>=UNIQUE(A2:A100,,TRUE)</code></pre>



<p>今までの売上データから、一度しか購入していない会社などをピックアップするような作業に使うことが可能です。</p>



<h3 class="wp-block-heading"><span id="toc8">仕事で役立つ便利技！</span></h3>



<h4 class="wp-block-heading">SORT関数との組み合わせ</h4>



<p>UNIQUE関数で重複しないように値を抽出後、<a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>を使って値を並べ変えることができます。</p>



<pre class="wp-block-code"><code>=SORT(UNIQUE(A2:A100),1,-1)</code></pre>



<p>この式では、以下の処理を行っています。  </p>



<ol class="wp-block-list"><li>A2:A100の重複していないリストを抽出  </li><li>抽出したリストを降順に並べ替え</li></ol>



<p>重複していないリストを確認しやすいようにしたい場合は、この組み合わせがおすすめです。</p>



<h4 class="wp-block-heading">FILTER関数との組み合わせ</h4>



<p><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>を利用して条件に一致するデータだけを抽出後、重複しているデータを除いて値を出力することができます。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(A2:D100,A2:A100=&quot;食品&quot;))</code></pre>



<p>この式では、以下の処理を行っています。  </p>



<ol class="wp-block-list"><li>A列が「食品」と一致する行を探し、A列からD列までのデータを抽出  </li><li>重複行を削除</li></ol>



<p>条件で絞った後のデータから、重複していないリストを作成したい場合は、この組み合わせがおすすめです。</p>



<h4 class="wp-block-heading">COUNT関数との組み合わせ</h4>



<p>UNIQUE関数で重複しないように値を抽出後、<a href="https://mashukabu.com/excel-function-howto-use-count/">COUNT関数</a>で重複していないデータの数を出力できます。</p>



<pre class="wp-block-code"><code>=COUNT(UNIQUE(A2:100))</code></pre>



<p>この式では、以下の処理を行っています。  </p>



<ol class="wp-block-list"><li>A2:A100の重複していないリストを抽出  </li><li>抽出した値の個数を算出</li></ol>



<p>内容は確認しなくても良いが、重複していないデータの個数だけ知りたい場合、この組み合わせがおすすめです。</p>



<h2 class="wp-block-heading"><span id="toc9">よくあるエラーと解決法</span></h2>



<h3 class="wp-block-heading"><span id="toc10">関数が使えない</span></h3>



<p>UNIQUE関数は2019年12月にリリースされた関数であり、Microsoft 365とExcel 2021以降でのみ使用可能です。  <br>それよりも古いバージョンのExcelでは使用することが出来ません。</p>



<h3 class="wp-block-heading"><span id="toc11">「0」が表示される</span></h3>



<p>指定した範囲内に空白のセルが存在する場合、結果が「0」として返されることがあります。  <br>空白の「0」が不要な場合は、以下のように<a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>を使って以外の値を抽出するようにしてください。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(A1:A6,A1:A6&lt;&gt;&quot;&quot;))</code></pre>



<h3 class="wp-block-heading"><span id="toc12">#CALC!エラーの原因と対策</span></h3>



<p>空白が「0」として返されるエラーを解決すると、#CALC!エラーが発生する可能性があります。  <br>このエラーは、条件に合致するデータが存在しない場合に表示されますが、  <br><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>の第3引数（空の場合）を指定することで発生しなくなります。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(A1:A6,A1:A6&lt;&gt;&quot;&quot;,&quot;該当データなし&quot;))</code></pre>



<h2 class="wp-block-heading"><span id="toc13">さらなるスキルアップを目指そう！</span></h2>



<p>UNIQUE関数を学習した後は、更に以下の関数も内容を把握しておきましょう。  <br>用途が似ている関数や、一緒に使うとさらにできることの幅が広がる関数です。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>関数名</th><th>用途</th></tr></thead><tbody><tr><td>&nbsp;</td><td><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER</a></td><td>条件に基づいてデータを抽出</td></tr><tr><td>&nbsp;</td><td>[](https://mashukabu.com/excel-function-howto-use-iferror/)<a href="https://mashukabu.com/excel-function-howto-use-xlookup/">XLOOKUP</a></td><td>VLOOKUP関数より柔軟でシンプルな検索</td></tr><tr><td>&nbsp;</td><td><a href="https://mashukabu.com/excel-function-howto-use-exact/">EXACT</a></td><td>2つの文字が一致しているか確認</td></tr><tr><td>&nbsp;</td><td><a href="https://mashukabu.com/excel-function-howto-use-asc/">ASC</a></td><td>すべての全角文字を半角文字に変換</td></tr></tbody></table></figure>



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



<h3 class="wp-block-heading"><span id="toc15">関数一覧</span></h3>



<p><a href="https://mashukabu.com/">ましゅかぶろぐ</a>ではExcel関数の一覧を3パターンご用意しています。  <br>用途に合わせてお使いください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order">アルファベット順 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-list-by-function/">機能別 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order-pronunciation/">Excel関数の読み方一覧</a></li></ul>



<p>各一覧の文字色が青くなっている関数はクリックすると解説ページを開くことができます。</p>



<h3 class="wp-block-heading"><span id="toc16">エラー値についてのまとめ記事</span></h3>



<p>関数でエラーが発生した際に表示される、エラーの種類を以下の記事でまとめています。</p>



<p>[</p>



<p>![](https://mashukabu.com/wp-content/uploads/2022/02/NO-IMAGE-160&#215;90.jpg)</p>



<p>【Excel】セルに表示されるエラーの種類と原因、対処方法を解説<br>この記事ではエクセル関数のエラー値と種類、それぞれの対処方法について解説しています。この記事は次のような人におすすめ表示されているエラーから大体の原因を知りたいエラーの種類と対処方法を知っておきたい無駄なところで業務につまずきたくないエクセ&#8230;</p>



<p>![]()![](https://www.google.com/s2/favicons?domain=https://mashukabu.com)<br>mashukabu.com](https://mashukabu.com/excel-error-value-list/)</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-unique/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Excel】FILTER関数の使い方完全ガイド – 初心者から中級者まで役立つデータ抽出テクニック</title>
		<link>https://mashukabu.com/excel-function-howto-use-filter/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-filter/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 08 Mar 2025 14:40:06 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[FILTER関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[スピル]]></category>
		<category><![CDATA[データ抽出]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3246</guid>

					<description><![CDATA[ExcelのFILTER関数の使い方を基本から応用まで解説。条件に合致するデータを別セルに抽出する方法、SORT関数やUNIQUE関数との組み合わせパターンも紹介。]]></description>
										<content:encoded><![CDATA[
<p>ExcelのFILTER関数は、指定した条件に合致するデータを瞬時に抽出できる関数です。シートの機能で行うフィルターとは異なり、元データを変更せずに別の場所へ結果を表示できる点が特徴です。  <br>本記事では、実際の業務で即戦力となる使い方を基本から応用まで詳しく解説します。</p>



<p>この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>指定した値に一致するデータをすべて抽出したい</li></ul>



<ul class="wp-block-list"><li>Excelでのデータ処理をより効率的に行いたい</li></ul>



<ul class="wp-block-list"><li>フィルター機能を使わずにフィルタリングしたい</li></ul>



<p>「Excel関数？」「聞いた事あるけど何か知らないな？」という方は、<a href="https://mashukabu.com/excel-function/">こちらの記事</a>でエクセル関数について解説していますので先に確認して頂くと理解しやすいと思います。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">FILTER関数とは？</a><ol><li><a href="#toc2" tabindex="0">FILTER関数の読み方</a></li><li><a href="#toc3" tabindex="0">FILTER関数では何ができるの？</a></li></ol></li><li><a href="#toc4" tabindex="0">FILTER関数の使い方</a><ol><li><a href="#toc5" tabindex="0">関数の基本構文をマスター</a></li><li><a href="#toc6" tabindex="0">関数の引数について知ろう</a></li><li><a href="#toc7" tabindex="0">実際にやってみよう！実践編</a></li><li><a href="#toc8" tabindex="0">仕事で役立つ便利技！</a></li></ol></li><li><a href="#toc9" tabindex="0">よくあるエラーと解決法</a><ol><li><a href="#toc10" tabindex="0">#CALC!エラーの原因と対策</a></li><li><a href="#toc11" tabindex="0">条件の範囲指定ミス</a></li></ol></li><li><a href="#toc12" tabindex="0">さらなるスキルアップを目指そう！</a></li><li><a href="#toc13" tabindex="0">まとめ</a><ol><li><a href="#toc14" tabindex="0">関数一覧</a></li><li><a href="#toc15" tabindex="0">エラー値についてのまとめ記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">FILTER関数とは？</span></h2>



<h3 class="wp-block-heading"><span id="toc2">FILTER関数の読み方</span></h3>



<p>読み方は「フィルター関数」です。</p>



<h3 class="wp-block-heading"><span id="toc3">FILTER関数では何ができるの？</span></h3>



<p>FILTER関数は、指定した条件に基づいてデータを抽出できる関数です。  <br>この関数はMicrosoft 365やExcel 2021以降で利用することができます。</p>



<p>Excelで表やリストからデータを検索・抽出する際、従来はフィルター機能を使用するか、複雑な数式の組み合わせが必要でした。  <br>しかし、FILTER関数の登場により、よりシンプルに同様のことができるようになりました。</p>



<p>例えば、商品コードから特定の商品データを抽出したり、部門名から該当部門の社員情報をリストアップしたりするような作業が、FILTER関数一つで完了します。  <br>データ量が増えても自動的に対応してくれるため、日々増減するデータの抽出も簡単に実施できます。</p>



<h2 class="wp-block-heading"><span id="toc4">FILTER関数の使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc5">関数の基本構文をマスター</span></h3>



<p>まずはFILTER関数の基本構文を確認しましょう。  <br>基本構文は以下の3つの引数で構成されています。</p>



<p>構文</p>



<p><strong>=FILTER( 配列 , 含む , [空の場合] )</strong></p>



<p>FILTER関数の引数は3個あり、必ず指定する引数は2個です。</p>



<p>使用例</p>



<ol class="wp-block-list"><li>すべての引数を指定する場合  </li></ol>



<p><strong>=FILTER(A2:D100, D2:D100=”食品”, “該当するデータがありません”)</strong></p>



<ol class="wp-block-list"><li>最小限の引数のみを指定する場合  </li></ol>



<p><strong>=FILTER(A2:D100, D2:D100=”食品”)</strong></p>



<p>注意が必要な点は、検索値と範囲の指定方法です。  <br>関数を入力後、数式を別のセルにコピーする場合、絶対参照（$記号）にしていないと範囲がずれてしまいます。  <br>範囲が変わっても問題ない場合を除き、検索範囲がずれないように絶対参照（$記号）をアルファベットと数字の前に一つずつ入力しておきましょう。  <br>F4キーを押すことで$記号を自動挿入することもできます。</p>



<h3 class="wp-block-heading"><span id="toc6">関数の引数について知ろう</span></h3>



<h4 class="wp-block-heading">第1引数：配列（必須）</h4>



<p>「配列」引数には、抽出の対象となるデータ範囲を指定します。  <br>表全体や特定の列範囲など、連続したセル範囲を指定できます。</p>



<p>この引数を指定する際に注意したいのは「見出し行」です。  <br>列見出しが記載されている行を範囲に含めることにより、抽出後のデータに見出しが混ざることが懸念されます。必要ない場合は見出しを除く範囲を指定しましょう。</p>



<p>例えば、A1:D10という範囲で、A1:D1が見出し行である場合、配列には「A2:D10」を指定します。  <br>また、この引数では表の一部列のみを指定することも可能です。必要に応じて特定の部分だけを指定するなど、柔軟に指定しましょう。</p>



<h4 class="wp-block-heading">第2引数：含む（必須）</h4>



<p>「含む」引数は、抽出するデータの条件を指定します。  <br>条件を指定する際は「範囲=値」のように指定します。</p>



<p>例えば「D2:D10=”食品”」を指定することで、D2からD10の範囲で「食品」と一致するセルの行を抽出することができます。</p>



<h4 class="wp-block-heading">第3引数：空の場合（省略可能）</h4>



<p>「空の場合」引数は、条件に合致するデータが存在しない場合に表示する値を指定します。  <br>この引数は省略可能ですが、指定しない場合、条件に合致するデータがない場合に「#CALC!」エラーが表示されます。</p>



<p>エラー表示を避けるため、この引数に「該当なし」や「データがありません」などのメッセージを指定しておきましょう。  <br>空の文字列（””）を指定することで、何も表示しないようにすることもできます。</p>



<h3 class="wp-block-heading"><span id="toc7">実際にやってみよう！実践編</span></h3>



<h4 class="wp-block-heading">単一条件のデータ抽出</h4>



<p>まずは単一の条件でデータを抽出する方法です。</p>



<p>例えば、A列からD列に家計簿のデータが入力されており、A列に「収入」または「支出」が記載されている表からデータを抽出するとしましょう。  <br>表のデータから「支出」のデータ行だけを抽出したい場合は以下のように関数を使います。</p>



<pre class="wp-block-code"><code>=FILTER(A2:D100, A2:A100=&quot;支出&quot;, &quot;該当データなし&quot;)</code></pre>



<h4 class="wp-block-heading">複数条件のデータ抽出</h4>



<p>複数の条件を指定してデータ抽出する方法もあります。</p>



<p>先ほどと同じ表でA列が「支出」で、B列が「食費」のデータ行を抽出する場合は以下のように関数を使います。</p>



<pre class="wp-block-code"><code>=FILTER(A2:D100, (A2:A100=&quot;支出&quot;)*(B2:B100=&quot;食費&quot;), &quot;該当データなし&quot;)</code></pre>



<p>この式のポイントは「 * 」です。  <br>今回のケースは、A列が「支出」で、B列が「食費」という2つの条件があり、どちらも条件を満たした行だけを抽出しました。  <br>このようにどちらも守る必要がある条件のことを「AND条件」と言います。</p>



<p>FILTER関数では、条件同士を「*」（アスタリスク）で結合することで、AND条件を指定することができます。では、どちらかの条件と一致していれば良い場合はどうでしょうか。</p>



<p>例えば、B列が「食費」または「光熱費」の行を抽出したいようなケースは、AND条件ではありません。AまたはBのように指定する場合は「OR条件」を利用します。</p>



<p>OR条件は、条件同士を「+」（プラス）で結合することで、AND条件を指定することができます。</p>



<pre class="wp-block-code"><code>=FILTER(A2:D100, (B2:B100=&quot;食費&quot;)+(B2:B100=&quot;光熱費&quot;), &quot;該当データなし&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc8">仕事で役立つ便利技！</span></h3>



<h4 class="wp-block-heading">SUM関数との組み合わせ</h4>



<p>FILTER関数でデータ抽出後、<a href="https://mashukabu.com/excel-function-howto-use-sum/">SUM関数</a>を使って特定の列の値を合計することができます。</p>



<pre class="wp-block-code"><code>=SUM(FILTER(B2:B100, YEAR(A2:A100)=2025, 0))</code></pre>



<p>この式では、以下の処理を行っています。  </p>



<ol class="wp-block-list"><li>A2:D100のA列の年が「2025」に一致する行を抽出  </li><li>抽出したB列データの値を合計する</li></ol>



<p>フィルタ処理したデータを合計したい場合は、この組み合わせがおすすめです。</p>



<h4 class="wp-block-heading">SORT関数との組み合わせ</h4>



<p>FILTER関数でデータ抽出後、<a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>を使って特定の列で並べ替えることができます。</p>



<pre class="wp-block-code"><code>=SORT(FILTER(A2:D100, D2:D100=&quot;食品&quot;, &quot;&quot;), 2, 1)</code></pre>



<p>この式では、以下の処理を行っています。  </p>



<ol class="wp-block-list"><li>A2:D100のD列が「食品」に一致する行を抽出  </li><li>抽出したデータの2列目の値で昇順に並べ変え</li></ol>



<p>フィルタ処理に加えて並び替えをしたい場合は、この組み合わせがおすすめです。</p>



<h4 class="wp-block-heading">UNIQUE関数との組み合わせ</h4>



<p>FILTER関数でデータ抽出後、<a href="https://mashukabu.com/excel-function-howto-use-unique/">UNIQUE関数</a>を使って重複のないリストを作成することもできます。</p>



<pre class="wp-block-code"><code>=UNIQUE(FILTER(A2:D100, D2:D100=&quot;食品&quot;, &quot;&quot;))</code></pre>



<p>この式では、以下の処理を行っています。  </p>



<ol class="wp-block-list"><li>A2:D100のD列が「食品」に一致する行を抽出  </li><li>抽出したデータから内容が重複している行を削除</li></ol>



<p>フィルタ処理した上で、内容が重複している行を削除したい場合はこの組み合わせがおすすめです。</p>



<h2 class="wp-block-heading"><span id="toc9">よくあるエラーと解決法</span></h2>



<h3 class="wp-block-heading"><span id="toc10">#CALC!エラーの原因と対策</span></h3>



<p>FILTER関数を使用していて最もよく見られるエラーが「#CALC!」エラーです。  <br>このエラーは、条件に合致するデータが存在しない場合に表示されますが、  <br>第3引数（空の場合）に値を指定することで発生しなくなります。</p>



<h3 class="wp-block-heading"><span id="toc11">条件の範囲指定ミス</span></h3>



<p>FILTER関数で条件を指定する際、データ範囲と条件範囲のサイズが一致していないとエラーになります。例えば、A2:D100のデータに対して、D2:D50という不完全な範囲で条件を指定した場合です。</p>



<p>解決策は、データ範囲と条件範囲のサイズを一致させることです。条件範囲はデータ範囲の特定の列に対応している必要があります。例えば：</p>



<pre class="wp-block-code"><code>=FILTER(A2:D100, D2:D100=&quot;食品&quot;, &quot;該当なし&quot;)</code></pre>



<h2 class="wp-block-heading"><span id="toc12">さらなるスキルアップを目指そう！</span></h2>



<p>FILTER関数を学習した後は、更に以下の関数も内容を把握しておきましょう。  <br>用途が似ている関数や、一緒に使うとさらにできることの幅が広がる関数です。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>関数名</th><th>用途</th></tr></thead><tbody><tr><td>&nbsp;</td><td><a href="https://mashukabu.com/excel-function-howto-use-unique/">UNIQUE</a></td><td>一意の値(重複していない値)を抽出</td></tr><tr><td>&nbsp;</td><td>[](https://mashukabu.com/excel-function-howto-use-iferror/)<a href="https://mashukabu.com/excel-function-howto-use-xlookup/">XLOOKUP</a></td><td>VLOOKUP関数より柔軟でシンプルな検索</td></tr><tr><td>&nbsp;</td><td><a href="https://mashukabu.com/excel-function-howto-use-sequence/">SEQUENCE</a></td><td>連続した数値の一覧を生成</td></tr><tr><td>&nbsp;</td><td><a href="https://mashukabu.com/excel-function-howto-use-randarray/">RANDARRAY</a></td><td>ランダムな数値の配列を生成</td></tr></tbody></table></figure>



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



<p>本記事では、Excel FILTER関数の基本から応用までを詳しく解説しました。  <br>FILTER関数は、条件に基づいてデータを抽出する関数であり、Microsoft 365やExcel 2021以降で利用できます。</p>



<p>基本的な構文を覚えることで、様々なデータ抽出ニーズに対応できます。  <br>実務では、FILTER関数を他の関数と組み合わせることで、より高度なデータ処理が可能になります。  <br>今回は汎用的な組み合わせをご紹介しましたが、ご自身の業務に合わせて他の関数との組み合わせも探してみてください。さらに業務効率が向上するかもしれません。</p>



<p>FILTER関数を習得した後は、他の関数についても幅広く知ることをお勧めします。  <br>関数と関数の組み合わせで、今まで出来ないと思っていた作業も簡単にできる可能性があります。  <br><a href="https://mashukabu.com/">ましゅかぶろぐ</a>ではExcel関数の一覧を公開しています。是非学習の役に立ててください。</p>



<h3 class="wp-block-heading"><span id="toc14">関数一覧</span></h3>



<p><a href="https://mashukabu.com/">ましゅかぶろぐ</a>ではExcel関数の一覧を3パターンご用意しています。  <br>用途に合わせてお使いください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order">アルファベット順 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-list-by-function/">機能別 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order-pronunciation/">Excel関数の読み方一覧</a></li></ul>



<p>各一覧の文字色が青くなっている関数はクリックすると解説ページを開くことができます。</p>



<h3 class="wp-block-heading"><span id="toc15">エラー値についてのまとめ記事</span></h3>



<p>関数でエラーが発生した際に表示される、エラーの種類を以下の記事でまとめています。</p>



<p>[</p>



<p>![](https://mashukabu.com/wp-content/uploads/2022/02/NO-IMAGE-160&#215;90.jpg)</p>



<p>【Excel】セルに表示されるエラーの種類と原因、対処方法を解説<br>この記事ではエクセル関数のエラー値と種類、それぞれの対処方法について解説しています。この記事は次のような人におすすめ表示されているエラーから大体の原因を知りたいエラーの種類と対処方法を知っておきたい無駄なところで業務につまずきたくないエクセ&#8230;</p>



<p>![]()![](https://www.google.com/s2/favicons?domain=https://mashukabu.com)<br>mashukabu.com](https://mashukabu.com/excel-error-value-list/)</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-filter/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>EXPAND関数の使い方｜配列を拡張する基本から実務活用まで解説</title>
		<link>https://mashukabu.com/excel-function-howto-use-expand/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-expand/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 05 Jan 2023 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[EXPAND関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[pad_with]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[配列拡張]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3243</guid>

					<description><![CDATA[ExcelのEXPAND関数の使い方を基本から実務活用まで解説。構文・引数の詳細、pad_with省略時の#N/A回避法、FILTER結果の固定サイズ化やVSTACK前の列数正規化など応用例も紹介。DROP関数との違い・使い分けやエラー対処法まで網羅しています。]]></description>
										<content:encoded><![CDATA[
<p>FILTER関数やVSTACK関数の結果って、条件によって行数がバラバラになりますよね。</p>



<p>そのまま横に並べるとレイアウトが崩れて困った経験はありませんか？</p>



<p>手動で空行を追加してサイズを揃えるのは手間ですし、修正漏れも起きがちです。</p>



<p>EXPAND関数を使えば、配列を好きなサイズに自動で拡張できます。</p>



<p>この記事では、構文・引数の詳細からpad_withの設定、実務で使える応用例、よくあるエラーの対処法まで解説します。</p>



<p>この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>動的配列の結果を固定サイズに揃えたい</li><li>EXPAND関数の引数やpad_withの使い方を知りたい</li><li>EXPAND関数とDROP関数の違いを整理したい</li><li>EXPAND関数で発生するエラーを解決したい</li></ul>



<p>「Excel関数ってなに？」「よくわからないな」という方は、<a href="https://mashukabu.com/excel-function/">こちらの記事</a>を先に読んでおくとわかりやすいですよ。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-7" checked><label class="toc-title" for="toc-checkbox-7">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">EXPAND関数とは？配列を拡張する動的配列関数</a><ol><li><a href="#toc2" tabindex="0">EXPAND関数の読み方</a></li><li><a href="#toc3" tabindex="0">EXPAND関数では何ができるの？</a></li></ol></li><li><a href="#toc4" tabindex="0">EXPAND関数の使い方（構文と引数）</a><ol><li><a href="#toc5" tabindex="0">EXPAND関数の基本構文</a></li><li><a href="#toc6" tabindex="0">EXPAND関数の引数を詳しく解説</a></li></ol></li><li><a href="#toc7" tabindex="0">EXPAND関数の基本的な使い方</a><ol><li><a href="#toc8" tabindex="0">セル範囲を行方向に拡張する</a></li><li><a href="#toc9" tabindex="0">行と列の両方向に拡張する</a></li><li><a href="#toc10" tabindex="0">列方向だけ拡張する</a></li></ol></li><li><a href="#toc11" tabindex="0">EXPAND関数の実践的な使い方・応用例</a><ol><li><a href="#toc12" tabindex="0">FILTER関数の結果を固定サイズに揃える</a></li><li><a href="#toc13" tabindex="0">VSTACKで列数が異なるテーブルを結合する</a></li><li><a href="#toc14" tabindex="0">SEQUENCEと組み合わせて連番付きテンプレートを作る</a></li><li><a href="#toc15" tabindex="0">DROP関数と組み合わせてデータを整形する</a></li></ol></li><li><a href="#toc16" tabindex="0">EXPAND関数とDROP関数の違い・使い分け</a><ol><li><a href="#toc17" tabindex="0">EXPAND関数とDROP関数の比較表</a></li><li><a href="#toc18" tabindex="0">DROP・TAKE・EXPANDの3関数比較</a></li><li><a href="#toc19" tabindex="0">場面別おすすめの選び方</a></li></ol></li><li><a href="#toc20" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc21" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc22" tabindex="0">#N/A エラー（pad_with省略時）</a></li><li><a href="#toc23" tabindex="0">#SPILL! エラー</a></li><li><a href="#toc24" tabindex="0">#NAME? エラー</a></li></ol></li><li><a href="#toc25" tabindex="0">まとめ</a><ol><li><a href="#toc26" tabindex="0">関数一覧</a></li><li><a href="#toc27" tabindex="0">エラー値についてのまとめ記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">EXPAND関数とは？配列を拡張する動的配列関数</span></h2>



<h3 class="wp-block-heading"><span id="toc2">EXPAND関数の読み方</span></h3>



<p>読み方は「エクスパンド関数」です。英語の「Expand（拡張する・広げる）」が由来です。</p>



<h3 class="wp-block-heading"><span id="toc3">EXPAND関数では何ができるの？</span></h3>



<p>EXPAND関数は、配列やセル範囲を指定した行数・列数に拡張できる関数です。Microsoft 365で利用できます。</p>



<p>例えば3行2列の表を10行3列に広げたいとき、一発で拡張できます。拡張部分には空白や0など、好きな値を埋められます。</p>



<p>「配列のサイズを揃える」という地味だけど大事な作業を自動化してくれます。</p>



<p><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-vstack/">VSTACK関数</a>と組み合わせると、さらに便利ですよ。</p>



<p>EXPANDという名前のとおり「拡大専用」の関数です。配列を小さくすることはできません。</p>



<p>縮小したい場合は<a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a>を使いましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>EXPAND関数はMicrosoft 365（Windows / Mac）およびExcel for the webで利用できます。買い切り版のExcel 2019では使用できません。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc4">EXPAND関数の使い方（構文と引数）</span></h2>



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



<p>まずはEXPAND関数の基本構文を確認しましょう。</p>



<pre class="wp-block-code"><code>=EXPAND(配列, 行, [列], [pad_with])</code></pre>



<p>EXPAND関数の引数は4つです。必須なのは最初の2つだけです。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>配列</td><td>必須</td><td>拡張したいセル範囲または配列</td></tr><tr><td>行</td><td>必須</td><td>拡張後の総行数（元の行数以上を指定）</td></tr><tr><td>列</td><td>省略可</td><td>拡張後の総列数（省略時は列方向の拡張なし）</td></tr><tr><td>pad_with</td><td>省略可</td><td>拡張部分に埋める値（省略時は#N/A）</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc6">EXPAND関数の引数を詳しく解説</span></h3>



<h4 class="wp-block-heading">第1引数：配列（必須）</h4>



<p>「配列」には、拡張したいセル範囲や配列を指定します。A1:C3のようなセル範囲はもちろん、FILTER関数の結果なども使えます。</p>



<h4 class="wp-block-heading">第2引数：行（必須）</h4>



<p>「行」には、拡張後の総行数を数値で指定します。</p>



<p>元の配列の行数以上の値を指定してください。元の行数より小さい値を指定すると#VALUE!エラーになります。</p>



<p>行方向の拡張が不要な場合は、元の行数と同じ値を指定します。</p>



<h4 class="wp-block-heading">第3引数：列（省略可）</h4>



<p>「列」には、拡張後の総列数を数値で指定します。省略した場合、列方向の拡張は行われません。</p>



<p>行と同様に、元の列数より小さい値は指定できません。</p>



<h4 class="wp-block-heading">第4引数：pad_with（省略可）— 実務では必ず指定しよう</h4>



<p>「pad_with」には、拡張部分に埋める値を指定します。この引数の設定はとても重要です。</p>



<p>省略すると#N/Aが表示されるため、実務では必ず指定しておきましょう。</p>



<p>pad_withの指定によって表示がどう変わるか、以下の表にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>pad_withの指定</th><th>拡張部分の表示</th><th>備考</th></tr></thead><tbody><tr><td>省略</td><td>#N/A</td><td>エラー値として扱われる</td></tr><tr><td>&#8220;&#8221;</td><td>空白表示</td><td>空文字列（ISBLANKはFALSE）</td></tr><tr><td>0</td><td>0</td><td>数値のゼロとして扱われる</td></tr><tr><td>&#8220;-&#8220;</td><td>&#8211;</td><td>テキストとして表示される</td></tr></tbody></table></figure>



<p>pad_withを省略すると、拡張部分の#N/Aが他の数式にも連鎖します。特別な理由がなければ &#8220;&#8221;（空文字列）か 0 を指定してください。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>pad_withに&#8221;&#8221;を指定したセルは見た目は空白ですが、空文字列が入った状態です。ISBLANK関数で判定するとFALSEが返ります。空白セルとして判定したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a>で別途対処してください。</p></blockquote>



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



<p>ここから実際にEXPAND関数を使ってみましょう。</p>



<h3 class="wp-block-heading"><span id="toc8">セル範囲を行方向に拡張する</span></h3>



<p>まずはシンプルに、行方向だけ拡張する例です。A1:B3（3行2列）の表を10行に広げます。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:B3, 10, 2, &quot;&quot;)</code></pre>



<p>この式では、元の3行2列のデータはそのまま残り、4行目から10行目までが空白で埋められます。</p>



<h3 class="wp-block-heading"><span id="toc9">行と列の両方向に拡張する</span></h3>



<p>行と列の両方を拡張することもできます。A1:B3（3行2列）を5行4列にしてみましょう。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:B3, 5, 4, 0)</code></pre>



<p>元のデータの右側と下側に、0で埋められたセルが追加されます。</p>



<h3 class="wp-block-heading"><span id="toc10">列方向だけ拡張する</span></h3>



<p>列方向だけ拡張したい場合、行の引数には元の行数をそのまま指定します。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:B3, 3, 6, &quot;&quot;)</code></pre>



<p>行数は3のまま変えず、列数だけ2列から6列に拡張しています。</p>



<h2 class="wp-block-heading"><span id="toc11">EXPAND関数の実践的な使い方・応用例</span></h2>



<p>基本を押さえたところで、実務で役立つ応用テクニックを紹介します。</p>



<h3 class="wp-block-heading"><span id="toc12">FILTER関数の結果を固定サイズに揃える</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>の結果は条件に合うデータの件数で行数が変わります。</p>



<p>複数のFILTER結果を横に並べると、行数がバラバラでレイアウトが崩れがちです。</p>



<p>EXPAND関数で結果を固定サイズに揃えましょう。</p>



<pre class="wp-block-code"><code>=EXPAND(FILTER(A2:C100, B2:B100=&quot;営業部&quot;), 10, 3, &quot;&quot;)</code></pre>



<p>この式では以下の処理を行っています。</p>



<ol class="wp-block-list"><li>A2:C100のうちB列が「営業部」の行を抽出</li><li>結果を10行3列に拡張し、足りない分を空白で埋める</li></ol>



<p>こうすれば結果が3件でも8件でも、常に10行分の表示領域を確保できます。</p>



<h3 class="wp-block-heading"><span id="toc13">VSTACKで列数が異なるテーブルを結合する</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-vstack/">VSTACK関数</a>で列数が異なるテーブルを縦結合すると、不足部分が#N/Aで埋まります。</p>



<p>EXPAND関数で列数を揃えておくと、#N/Aを回避できます。</p>



<p>例えば、A1:B5（2列）とD1:F5（3列）を縦に結合する場合です。</p>



<pre class="wp-block-code"><code>=VSTACK(EXPAND(A1:B5, 5, 3, &quot;&quot;), D1:F5)</code></pre>



<p>A1:B5を3列に拡張してからVSTACKで結合しています。こうすれば不足部分が#N/Aではなく空白で埋まります。</p>



<p>同じ考え方で<a href="https://mashukabu.com/excel-function-howto-use-hstack/">HSTACK関数</a>を使う場合にも、行数を揃える用途で活用できます。</p>



<h3 class="wp-block-heading"><span id="toc14">SEQUENCEと組み合わせて連番付きテンプレートを作る</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-sequence/">SEQUENCE関数</a>で連番を生成し、EXPAND関数で入力欄を確保するテクニックです。</p>



<pre class="wp-block-code"><code>=HSTACK(SEQUENCE(20), EXPAND({&quot;&quot;}, 20, 3, &quot;&quot;))</code></pre>



<p>この式では以下の処理を行っています。</p>



<ol class="wp-block-list"><li>SEQUENCE(20)で1〜20の連番を生成</li><li>空白を20行3列に拡張して入力欄を作成</li><li>HSTACKで連番と入力欄を横に結合</li></ol>



<p>名簿や受付リストなど、連番付きの空テンプレートを素早く作りたいときに便利です。</p>



<h3 class="wp-block-heading"><span id="toc15">DROP関数と組み合わせてデータを整形する</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a>で不要な行を削除してからEXPAND関数でサイズを揃える、という2段階の整形パターンです。</p>



<p>例えばA1:D20のデータからヘッダー行を除いたうえで、結果を10行4列に固定したい場合です。</p>



<pre class="wp-block-code"><code>=EXPAND(DROP(A1:D20, 1), 10, 4, &quot;&quot;)</code></pre>



<p>DROPで先頭1行（ヘッダー）を削除し、EXPANDで10行4列に揃えています。レポートの表サイズを統一したいときに便利です。</p>



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



<p>EXPAND関数と<a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a>は配列のサイズを変更する関数です。ただし方向が逆で、「拡大」と「縮小」の対です。</p>



<h3 class="wp-block-heading"><span id="toc17">EXPAND関数とDROP関数の比較表</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>EXPAND関数</th><th>DROP関数</th></tr></thead><tbody><tr><td>機能</td><td>配列を<strong>拡大</strong>する</td><td>配列を<strong>縮小</strong>する</td></tr><tr><td>操作の方向</td><td>行・列を<strong>追加</strong></td><td>先頭/末尾の行・列を<strong>削除</strong></td></tr><tr><td>引数の意味</td><td>拡張後の<strong>総行列数</strong>を指定</td><td>削除する<strong>行列数</strong>を指定</td></tr><tr><td>負の数の指定</td><td>不可（#VALUE!エラー）</td><td>可（末尾から削除）</td></tr><tr><td>追加部分の値</td><td>pad_withで指定可能</td><td>なし（削除のみ）</td></tr><tr><td>対応環境</td><td>Microsoft 365</td><td>Microsoft 365</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc18">DROP・TAKE・EXPANDの3関数比較</span></h3>



<p>EXPAND関数・DROP関数に加えて、TAKE関数を含めた3つの配列操作関数を整理します。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>役割</th><th>配列サイズの変化</th><th>代表的な使い方</th></tr></thead><tbody><tr><td>EXPAND</td><td>配列を指定サイズに<strong>拡大</strong></td><td>大きくなる</td><td>FILTER結果を固定サイズに揃える</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP</a></td><td>先頭/末尾を<strong>削除</strong></td><td>小さくなる</td><td>ヘッダー行の除去</td></tr><tr><td>TAKE</td><td>先頭/末尾を<strong>取り出す</strong></td><td>小さくなる</td><td>上位N件の取得</td></tr></tbody></table></figure>



<p>DROPとTAKEは配列を縮小する点では同じですが、アプローチが逆です。DROPは「不要な部分を捨てる」、TAKEは「必要な部分だけ取る」です。</p>



<h3 class="wp-block-heading"><span id="toc19">場面別おすすめの選び方</span></h3>



<ul class="wp-block-list"><li><strong>結果のサイズを統一したい</strong> → EXPAND関数（不足分を埋めて整形）</li><li><strong>ヘッダー行の除去</strong> → <a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a>（「1行消す」がストレートに伝わる）</li><li><strong>上位N件だけ取得</strong> → TAKE関数（「N件取る」が直感的）</li><li><strong>ヘッダー除去→サイズ揃え</strong> → DROP → EXPAND の組み合わせ</li><li><strong>中間レコードの抽出</strong> → DROP + TAKE の組み合わせ</li></ul>



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



<p>EXPAND関数で発生するエラーをまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>主な原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE!</td><td>元の配列より小さいサイズを指定した</td><td>元のサイズ以上の値を指定する。縮小は<a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a>を使う</td></tr><tr><td>#VALUE!</td><td>行・列に負の値や小数を指定した</td><td>正の整数のみ指定する</td></tr><tr><td>#N/A</td><td>pad_with引数を省略した</td><td>pad_withに&#8221;&#8221;や0を指定する</td></tr><tr><td>#SPILL!</td><td>出力先のセルにデータがある</td><td>スピル先のセルを空にする</td></tr><tr><td>#NAME?</td><td>未対応のExcelバージョンで使用した</td><td>Microsoft 365環境で開き直す</td></tr></tbody></table></figure>



<p>以下、エラーごとに詳しく解説します。</p>



<h3 class="wp-block-heading"><span id="toc21">#VALUE! エラー</span></h3>



<p>EXPAND関数で最もよく見かけるのが#VALUE!エラーです。</p>



<p><strong>原因1：拡張後のサイズが元の配列より小さい</strong></p>



<p>EXPAND関数は拡大専用の関数です。元の配列より小さいサイズを指定するとエラーになります。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:C5, 3, 2, &quot;&quot;)</code></pre>



<p>A1:C5（5行3列）を3行2列にしようとしていますが、縮小はできません。縮小したい場合は<a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a>を使いましょう。</p>



<p><strong>原因2：行・列に負の値や小数を指定した</strong></p>



<p>行・列の引数には正の整数のみ指定できます。-5や3.5のような値を入れると#VALUE!エラーになります。</p>



<h3 class="wp-block-heading"><span id="toc22">#N/A エラー（pad_with省略時）</span></h3>



<p>pad_with引数を省略すると、拡張部分に#N/Aが表示されます。これは「値が未指定」という仕様上の動作です。</p>



<p>ただし、このセルを参照する他の数式でもエラーが連鎖します。pad_withに&#8221;&#8221;や0を指定して回避しましょう。</p>



<pre class="wp-block-code"><code>=EXPAND(A1:B3, 10, 3, &quot;&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc23">#SPILL! エラー</span></h3>



<p>EXPAND関数の結果が表示される範囲に既存データがあると#SPILL!エラーになります。</p>



<p>スピル先のセルを空にするか、数式の入力位置を移動してください。動的配列関数全般で起きるエラーです。</p>



<h3 class="wp-block-heading"><span id="toc24">#NAME? エラー</span></h3>



<p>対応していないExcelで使用すると#NAME?エラーになります。EXPAND関数はMicrosoft 365専用です。サブスクリプション版をお使いか確認してください。</p>



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



<p>この記事では、EXPAND関数の基本的な使い方から実践的な応用例まで解説しました。</p>



<p>ポイントをおさらいしましょう。</p>



<ul class="wp-block-list"><li><strong>EXPAND関数</strong>は配列を指定サイズに拡張する動的配列関数</li><li><strong>pad_with引数</strong>で拡張部分の値を指定できる。省略すると#N/Aになるので&#8221;&#8221;や0を指定するのがおすすめ</li><li><strong>FILTER関数と組み合わせ</strong>れば、抽出結果を固定サイズに揃えられる</li><li><strong><a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a></strong>は縮小、<strong>EXPAND関数</strong>は拡大と、役割が正反対</li><li><strong>DROP → EXPAND</strong> の順で組み合わせれば、不要行の除去とサイズ統一を一度にできる</li><li><strong>#VALUE!エラー</strong>は元の配列より小さいサイズを指定したときに発生する</li></ul>



<p>EXPAND関数は単体では地味に見えますが、他の動的配列関数と組み合わせると本領を発揮します。</p>



<p>まずは<a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>の結果を固定サイズに揃えるところから試してみてください。</p>



<p><a href="https://mashukabu.com/">biz-tactics</a>ではExcel関数の一覧を公開しています。他の関数も知りたい方はぜひ参考にしてください。</p>



<h3 class="wp-block-heading"><span id="toc26">関数一覧</span></h3>



<p><a href="https://mashukabu.com/">biz-tactics</a>ではExcel関数の一覧を3パターンご用意しています。<br>用途に合わせてお使いください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order">アルファベット順 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-list-by-function/">機能別 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order-pronunciation/">Excel関数の読み方一覧</a></li></ul>



<p>各一覧の文字色が青くなっている関数はクリックすると解説ページを開くことができます。</p>



<h3 class="wp-block-heading"><span id="toc27">エラー値についてのまとめ記事</span></h3>



<p>関数でエラーが発生した際に表示される、エラーの種類を以下の記事でまとめています。</p>



<p><a href="https://mashukabu.com/excel-error-value-list/">【Excel】セルに表示されるエラーの種類と原因、対処方法を解説</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-expand/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>DROP関数の使い方｜先頭・末尾を削除するExcel配列関数</title>
		<link>https://mashukabu.com/excel-function-howto-use-drop/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-drop/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 01 Jan 2023 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[DROP関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[配列操作]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3230</guid>

					<description><![CDATA[ExcelのDROP関数の使い方を解説。先頭削除・末尾削除の引数の仕組みからFILTER結果のヘッダー行除去・集計行の除外など実務活用例、TAKE・EXPAND関数との使い分けまで網羅。]]></description>
										<content:encoded><![CDATA[
<p>DROP関数って知っていますか？配列の「いらない行」をサクッと消せる関数です。</p>



<p>FILTERやSORT関数の結果にヘッダー行が残ってしまう。手動で消すのも面倒だし、行が増えるたびに調整するのも現実的じゃないですよね。こういう小さなストレスを放置すると、数式がどんどん複雑になっていきます。</p>



<p>この記事では、DROP関数の基本的な使い方から実務での活用パターンまでまとめて解説します。先頭行の削除、末尾行の削除、列方向の削除まで、具体的な数式とあわせて紹介するので、ぜひ参考にしてください。</p>



<p>この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>DROP関数の引数や構文を知りたい</li><li>FILTER結果のヘッダー行を削除したい</li><li>DROP・TAKE・EXPANDの違いを整理したい</li></ul>



<p>「Excel関数ってなに？」「よくわからないな」という方は、<a href="https://mashukabu.com/excel-function/">こちらの記事</a>を先に読んでおくとわかりやすいですよ。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">DROP関数とは？先頭・末尾を削除する動的配列関数</a><ol><li><a href="#toc2" tabindex="0">DROP関数の読み方</a></li><li><a href="#toc3" tabindex="0">DROP関数では何ができるの？</a></li><li><a href="#toc4" tabindex="0">DROP関数が使える環境</a></li><li><a href="#toc5" tabindex="0">TAKE・EXPANDと並ぶ配列操作関数の一つ</a></li></ol></li><li><a href="#toc6" tabindex="0">DROP関数の使い方（構文と引数の詳細）</a><ol><li><a href="#toc7" tabindex="0">基本構文</a></li><li><a href="#toc8" tabindex="0">行数に正の数を入れると先頭から削除・負の数で末尾から削除</a></li><li><a href="#toc9" tabindex="0">第3引数で列方向の削除もできる</a></li></ol></li><li><a href="#toc10" tabindex="0">DROP関数の基本的な使用例</a><ol><li><a href="#toc11" tabindex="0">先頭N行を削除する</a></li><li><a href="#toc12" tabindex="0">末尾N行を削除する（負の数を使う）</a></li><li><a href="#toc13" tabindex="0">先頭N列・末尾N列を削除する（第3引数）</a></li></ol></li><li><a href="#toc14" tabindex="0">DROP関数の実務活用例</a><ol><li><a href="#toc15" tabindex="0">FILTER結果からヘッダー行を除去する</a></li><li><a href="#toc16" tabindex="0">集計行（合計行）を除いてデータだけ取り出す</a></li><li><a href="#toc17" tabindex="0">直近N件を除いた過去データを抽出する</a></li></ol></li><li><a href="#toc18" tabindex="0">DROP・TAKE・EXPANDの使い分け</a><ol><li><a href="#toc19" tabindex="0">3関数の役割比較表</a></li><li><a href="#toc20" tabindex="0">場面別おすすめの選び方</a></li></ol></li><li><a href="#toc21" tabindex="0">DROP関数のエラーと対処法</a><ol><li><a href="#toc22" tabindex="0">#CALC!エラーが出るケース</a></li><li><a href="#toc23" tabindex="0">その他のエラー（#VALUE! / #SPILL! / #NAME?）</a></li></ol></li><li><a href="#toc24" tabindex="0">まとめ</a><ol><li><a href="#toc25" tabindex="0">関数一覧</a></li><li><a href="#toc26" tabindex="0">エラー値についてのまとめ記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">DROP関数とは？先頭・末尾を削除する動的配列関数</span></h2>



<h3 class="wp-block-heading"><span id="toc2">DROP関数の読み方</span></h3>



<p>読み方は「ドロップ関数」です。英語の「Drop（落とす・除外する）」が由来です。</p>



<h3 class="wp-block-heading"><span id="toc3">DROP関数では何ができるの？</span></h3>



<p>DROP関数は、配列やセル範囲から<strong>先頭または末尾の行・列を削除</strong>して、残りのデータを返す関数です。</p>



<p>たとえば10行のデータがあるとき、「先頭2行を除いた残り8行」を取り出す、といった操作がたった1つの数式でできます。動的配列関数なので、元データが増えても結果が自動で更新されるのがポイントです。</p>



<p>従来のExcelでは、OFFSET関数やINDEX関数を組み合わせて行の除外を行っていました。DROP関数を使えば、こうした複雑な数式がシンプルになります。</p>



<h3 class="wp-block-heading"><span id="toc4">DROP関数が使える環境</span></h3>



<p>DROP関数が使えるのは以下の環境です。</p>



<ul class="wp-block-list"><li>Microsoft 365（Windows / Mac）</li><li>Excel for the web（Web版Excel）</li></ul>



<p>買い切り版のExcel 2021やExcel 2019では使えません。数式を入力すると #NAME? エラーになるので注意してください。</p>



<h3 class="wp-block-heading"><span id="toc5">TAKE・EXPANDと並ぶ配列操作関数の一つ</span></h3>



<p>DROP関数は、2022年にMicrosoft 365へ追加された配列操作関数グループの一つです。同じタイミングで追加された関数として、以下の2つがあります。</p>



<ul class="wp-block-list"><li><strong>TAKE関数</strong>: 配列から先頭・末尾のN行（N列）を<strong>取り出す</strong></li><li><strong><a href="https://mashukabu.com/excel-function-howto-use-expand">EXPAND関数</a></strong>: 配列のサイズを指定した行数・列数に<strong>拡大する</strong></li></ul>



<p>DROPは「削除して残りを返す」、TAKEは「指定した分だけ取り出す」、EXPANDは「足りない分を埋めて広げる」。それぞれ役割がちがうので、場面に応じて使い分けるのがコツです。使い分けの詳細は記事の後半で紹介します。</p>



<h2 class="wp-block-heading"><span id="toc6">DROP関数の使い方（構文と引数の詳細）</span></h2>



<h3 class="wp-block-heading"><span id="toc7">基本構文</span></h3>



<p>DROP関数の構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=DROP(配列, 行数, [列数])</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>配列</td><td>必須</td><td>削除対象のセル範囲または配列</td></tr><tr><td>行数</td><td>必須</td><td>削除する行数。正の数で先頭から、負の数で末尾から削除</td></tr><tr><td>列数</td><td>省略可</td><td>削除する列数。正の数で左から、負の数で右から削除</td></tr></tbody></table></figure>



<p>第1引数に対象の配列を指定し、第2引数で削除する行数を指定します。第3引数の列数は省略できます。</p>



<h3 class="wp-block-heading"><span id="toc8">行数に正の数を入れると先頭から削除・負の数で末尾から削除</span></h3>



<p>DROP関数の動きを決めるのは、第2引数の<strong>符号（正・負）</strong>です。</p>



<ul class="wp-block-list"><li><strong>正の数</strong>（例: 2）→ 先頭から2行を削除し、残りを返す</li><li><strong>負の数</strong>（例: -2）→ 末尾から2行を削除し、残りを返す</li><li><strong>0</strong> → 行方向の削除をスキップ（列だけ削除したいときに使う）</li></ul>



<p>たとえばA2:D10の9行データがあるとします。=DROP(A2:D10, 3) と書けば、先頭3行が削除されて4行目以降の6行が返ります。</p>



<p>=DROP(A2:D10, -3) なら末尾3行が消えて、先頭6行が返ります。符号を変えるだけで削除方向が切り替わるので、覚えやすいですよね。</p>



<h3 class="wp-block-heading"><span id="toc9">第3引数で列方向の削除もできる</span></h3>



<p>第3引数（列数）を指定すると、列方向の削除もできます。</p>



<pre class="wp-block-code"><code>=DROP(A2:E10, 0, 1)</code></pre>



<p>この数式では、行方向の削除を0（スキップ）にして、左から1列だけ削除しています。たとえばA列がID番号の列で不要な場合、この書き方でA列を除いたB〜E列のデータだけ取り出せます。</p>



<p>行と列を同時に削除することもできます。</p>



<pre class="wp-block-code"><code>=DROP(A1:E10, 1, 1)</code></pre>



<p>これは「先頭1行」と「左1列」を同時に削除します。ヘッダー行とID列をまとめて除去したいときに便利です。</p>



<h2 class="wp-block-heading"><span id="toc10">DROP関数の基本的な使用例</span></h2>



<h3 class="wp-block-heading"><span id="toc11">先頭N行を削除する</span></h3>



<p>もっとも基本的な使い方です。たとえばA1:C6のデータから先頭2行を除きたい場合は、次のように書きます。</p>



<pre class="wp-block-code"><code>=DROP(A1:C6, 2)</code></pre>



<p>先頭の2行が削除され、3行目以降のデータが返ります。ヘッダー行を1行だけ除きたいなら =DROP(A1:C6, 1) でOKです。</p>



<h3 class="wp-block-heading"><span id="toc12">末尾N行を削除する（負の数を使う）</span></h3>



<p>末尾から削除するには、第2引数に負の数を指定します。</p>



<pre class="wp-block-code"><code>=DROP(A2:D11, -1)</code></pre>



<p>たとえば集計表の最終行に合計行がある場合、この数式で合計行を除いたデータ部分だけを取り出せます。</p>



<h3 class="wp-block-heading"><span id="toc13">先頭N列・末尾N列を削除する（第3引数）</span></h3>



<p>列方向だけ削除したいときは、行数を0にして第3引数を指定します。</p>



<pre class="wp-block-code"><code>=DROP(A2:F20, 0, 2)</code></pre>



<p>左から2列を削除して、3列目以降を返します。右から削除したい場合は負の数を使います。</p>



<pre class="wp-block-code"><code>=DROP(A2:F20, 0, -1)</code></pre>



<p>これで右端の1列が削除されます。</p>



<h2 class="wp-block-heading"><span id="toc14">DROP関数の実務活用例</span></h2>



<p>基本を押さえたところで、実務でよく使うパターンを紹介します。</p>



<h3 class="wp-block-heading"><span id="toc15">FILTER結果からヘッダー行を除去する</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-filter">FILTER関数</a>の結果にヘッダー行が含まれてしまうケースがあります。たとえば列全体を対象にフィルターをかけたとき、見出し行まで結果に入ってしまうことがありますよね。</p>



<p>こんなとき、DROPで先頭1行を除去すれば解決します。</p>



<pre class="wp-block-code"><code>=DROP(FILTER(A:C, B:B=&quot;東京&quot;), 1)</code></pre>



<p>FILTER関数の結果をそのままDROPに渡しているだけなので、数式もシンプルです。</p>



<h3 class="wp-block-heading"><span id="toc16">集計行（合計行）を除いてデータだけ取り出す</span></h3>



<p>テーブルの最終行に合計や平均の集計行がある場合、データ部分だけ取り出したいことがあります。</p>



<pre class="wp-block-code"><code>=DROP(A2:D11, -1)</code></pre>



<p>末尾1行を削除するだけで、集計行を除いた純粋なデータが手に入ります。<a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-unique/">UNIQUE関数</a>に渡す前処理として使うと、集計行が混ざる事故を防げます。</p>



<h3 class="wp-block-heading"><span id="toc17">直近N件を除いた過去データを抽出する</span></h3>



<p>売上データを日付の新しい順に並べ替え、直近3件を除いた残りを取り出したい場面があります。SORTとDROPを組み合わせます。</p>



<pre class="wp-block-code"><code>=DROP(SORT(A2:B20, 1, -1), 3)</code></pre>



<p>SORT関数で日付の降順に並べ替えたあと、DROPで先頭3行（＝直近3件）を削除しています。ちょっとむずかしく見えますが、「並べ替えてから先頭を切る」という2ステップで考えるとわかりやすいです。</p>



<p>応用として、TAKEとDROPを組み合わせれば「中間のレコードだけ」を取り出すこともできます。</p>



<pre class="wp-block-code"><code>=TAKE(DROP(A2:A100, 10), 10)</code></pre>



<p>先頭10行を削除したあと、そこから10行だけ取り出す。つまり11行目〜20行目が返ります。</p>



<h2 class="wp-block-heading"><span id="toc18">DROP・TAKE・EXPANDの使い分け</span></h2>



<h3 class="wp-block-heading"><span id="toc19">3関数の役割比較表</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>役割</th><th>配列サイズの変化</th></tr></thead><tbody><tr><td>DROP</td><td>指定した行・列を<strong>削除</strong>して残りを返す</td><td>小さくなる</td></tr><tr><td>TAKE</td><td>指定した行・列を<strong>取り出して</strong>返す</td><td>小さくなる</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-expand">EXPAND</a></td><td>配列を指定サイズに<strong>拡大</strong>する</td><td>大きくなる</td></tr></tbody></table></figure>



<p>DROPとTAKEは「配列を縮小する」という点では同じですが、アプローチが逆です。</p>



<ul class="wp-block-list"><li>DROP(A1:A10, 2) → 先頭2行を<strong>捨てて</strong>、3〜10行目を返す</li><li>TAKE(A1:A10, 2) → 先頭2行を<strong>取り出して</strong>返す</li></ul>



<p>どちらを使っても同じ結果が得られるケースはありますが、「不要な部分を消す」のか「必要な部分を取る」のか、意図が明確になる方を選ぶと数式が読みやすくなります。</p>



<h3 class="wp-block-heading"><span id="toc20">場面別おすすめの選び方</span></h3>



<ul class="wp-block-list"><li><strong>ヘッダー行の除去</strong> → DROP（「1行消す」がストレートに伝わる）</li><li><strong>上位N件だけ取得</strong> → TAKE（「N件取る」が直感的）</li><li><strong>中間レコードの抽出</strong> → DROP + TAKE の組み合わせ</li><li><strong>配列サイズを揃えたい</strong> → EXPAND（不足分を埋めて整形）</li><li><strong>ヘッダー除去→サイズ揃え</strong> → DROP → EXPAND の組み合わせ</li></ul>



<p>迷ったときは「自分がやりたい操作はどっち？消す？取る？」と考えてみてください。</p>



<h2 class="wp-block-heading"><span id="toc21">DROP関数のエラーと対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc22">#CALC!エラーが出るケース</span></h3>



<p>DROP関数で最もよく遭遇するのが #CALC! エラーです。これは、<strong>削除する行数が配列の行数以上になった</strong>ときに発生します。</p>



<p>たとえば5行しかないデータに対して =DROP(A1:A5, 5) と書くと、全行が削除されて結果が空になります。Excelは空の配列を返せないため、#CALC! エラーになります。</p>



<p>対処法としては、削除前に行数を確認する方法が確実です。</p>



<pre class="wp-block-code"><code>=IF(ROWS(A1:A10)&gt;N, DROP(A1:A10, N), A1:A10)</code></pre>



<p>ROWS関数で行数を取得し、削除行数Nより大きい場合だけDROPを実行します。行数が足りない場合は元の配列をそのまま返すので、エラーを回避できます。</p>



<p>もっとシンプルに処理したい場合は、IFERRORで囲む方法もあります。</p>



<pre class="wp-block-code"><code>=IFERROR(DROP(A1:A10, N), A1:A10)</code></pre>



<p>ただし、IFERRORは他のエラーもまとめて隠してしまうので、原因の特定がしにくくなる点には注意してください。</p>



<h3 class="wp-block-heading"><span id="toc23">その他のエラー（#VALUE! / #SPILL! / #NAME?）</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE!</td><td>行数・列数に数値以外（文字列など）を指定した</td><td>引数が数値になっているか確認する</td></tr><tr><td>#SPILL!</td><td>数式の出力先に既存のデータがある</td><td>出力先のセルを空にする</td></tr><tr><td>#NAME?</td><td>Microsoft 365以外のバージョンで使用した</td><td>Microsoft 365環境で開き直す</td></tr></tbody></table></figure>



<p>#SPILL! エラーは動的配列関数に共通のエラーです。DROP関数の結果が展開される先のセルに何かデータが入っていると発生します。出力先を空けるか、数式の配置を見直してみてください。</p>



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



<p>DROP関数は、配列から不要な行・列を削除するシンプルな関数です。</p>



<ul class="wp-block-list"><li><strong>正の数</strong>で先頭から削除、<strong>負の数</strong>で末尾から削除</li><li>第3引数で列方向の削除もできる</li><li><a href="https://mashukabu.com/excel-function-howto-use-filter">FILTER関数</a>のヘッダー除去や集計行の除外など、実務で使える場面が多い</li><li>TAKEとは「消す vs 取る」の関係。意図が伝わりやすい方を選ぶ</li></ul>



<p>配列操作関数を使いこなすと、Excelの数式がぐっとシンプルになります。まずはヘッダー行の除去あたりから、実際のシートで試してみてください。</p>



<p><a href="https://mashukabu.com/">biz-tactics</a>ではExcel関数の一覧を公開しています。他の関数も知りたい方はぜひ参考にしてください。</p>



<h3 class="wp-block-heading"><span id="toc25">関数一覧</span></h3>



<p><a href="https://mashukabu.com/">biz-tactics</a>ではExcel関数の一覧を3パターンご用意しています。<br>用途に合わせてお使いください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order">アルファベット順 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-list-by-function/">機能別 Excel関数一覧</a></li></ul>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order-pronunciation/">Excel関数の読み方一覧</a></li></ul>



<p>各一覧の文字色が青くなっている関数はクリックすると解説ページを開くことができます。</p>



<h3 class="wp-block-heading"><span id="toc26">エラー値についてのまとめ記事</span></h3>



<p>関数でエラーが発生した際に表示される、エラーの種類を以下の記事でまとめています。</p>



<p><a href="https://mashukabu.com/excel-error-value-list/">【Excel】セルに表示されるエラーの種類と原因、対処方法を解説</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-drop/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Excel】CHOOSEROWS関数の使い方｜配列から指定した行を取り出す方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-chooserows/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-chooserows/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Mon, 14 Nov 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[CHOOSECOLS]]></category>
		<category><![CDATA[CHOOSEROWS]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[FILTER]]></category>
		<category><![CDATA[INDEX]]></category>
		<category><![CDATA[SEQUENCE]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<category><![CDATA[配列操作]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3007</guid>

					<description><![CDATA[ExcelのCHOOSEROWS関数の使い方を解説。基本構文から負の数による最終行取得、SEQUENCE組み合わせ、INDEX・CHOOSECOLSとの違い、エラー対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p>「この表の2行目と5行目だけ取り出したいんだけど、いちいちコピペするしかないの？」「最終行のデータだけサッと抜き出す方法はないかな？」そんな悩み、ありますよね。</p>



<p>ExcelのCHOOSEROWS関数を使えば、配列やセル範囲から好きな行を自由に取り出せます。行番号を指定するだけで、複数行の抽出も順番の入れ替えも一発です。この記事では、基本構文から実務で使える応用パターンまで、わかりやすく解説していきますよ。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-9" checked><label class="toc-title" for="toc-checkbox-9">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのCHOOSEROWS関数とは</a><ol><li><a href="#toc2" tabindex="0">読み方・意味</a></li><li><a href="#toc3" tabindex="0">対応バージョン</a></li></ol></li><li><a href="#toc4" tabindex="0">CHOOSEROWS関数の基本構文と引数</a><ol><li><a href="#toc5" tabindex="0">引数「配列」</a></li><li><a href="#toc6" tabindex="0">引数「行番号」</a></li><li><a href="#toc7" tabindex="0">負の数で末尾から指定</a></li></ol></li><li><a href="#toc8" tabindex="0">CHOOSEROWS関数の基本的な使い方</a><ol><li><a href="#toc9" tabindex="0">特定の行を1行取り出す</a></li><li><a href="#toc10" tabindex="0">複数行をまとめて取り出す</a></li><li><a href="#toc11" tabindex="0">行の順番を入れ替えて取り出す</a></li></ol></li><li><a href="#toc12" tabindex="0">CHOOSEROWS関数の実務活用パターン</a><ol><li><a href="#toc13" tabindex="0">最終行のデータを取り出す（負の数）</a></li><li><a href="#toc14" tabindex="0">SEQUENCEと組み合わせて逆順に並べ替える</a></li><li><a href="#toc15" tabindex="0">テーブルと組み合わせる</a></li><li><a href="#toc16" tabindex="0">FILTER・SORTとの組み合わせ</a></li></ol></li><li><a href="#toc17" tabindex="0">INDEX関数との違い・使い分け</a></li><li><a href="#toc18" tabindex="0">CHOOSEROWSとCHOOSECOLSの違い</a><ol><li><a href="#toc19" tabindex="0">行と列の違い</a></li><li><a href="#toc20" tabindex="0">組み合わせて使う方法</a></li></ol></li><li><a href="#toc21" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc22" tabindex="0">#VALUE!エラー</a></li><li><a href="#toc23" tabindex="0">スピルエラー（#SPILL!）</a></li></ol></li><li><a href="#toc24" tabindex="0">まとめ</a><ol><li><a href="#toc25" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ExcelのCHOOSEROWS関数とは</span></h2>



<p>CHOOSEROWS関数は、<strong>配列やセル範囲から指定した行を取り出す関数</strong>です。動的配列関数（数式の結果が複数セルに自動展開される関数群）の1つで、取り出した結果はスピル（自動展開）で表示されます。</p>



<p>たとえば10行のデータから3行目と7行目だけを抜き出す、といった操作がワンクリックでできます。</p>



<h3 class="wp-block-heading"><span id="toc2">読み方・意味</span></h3>



<p>読み方は「チューズロウズ」です。「choose」は「選ぶ」、「rows」は「行」という意味ですね。名前のとおり「行を選ぶ」関数です。</p>



<p>姉妹関数として、列を選ぶ<a href="https://mashukabu.com/excel-function-howto-use-choosecols/">CHOOSECOLS関数</a>があります。</p>



<h3 class="wp-block-heading"><span id="toc3">対応バージョン</span></h3>



<p>CHOOSEROWS関数が使えるのは以下の環境です。</p>



<ul class="wp-block-list"><li>Microsoft 365</li><li>Excel 2024</li><li>Excel for the web</li></ul>



<p>Excel 2021以前のバージョンでは使えません。お使いのExcelのバージョンを確認してみてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc4">CHOOSEROWS関数の基本構文と引数</span></h2>



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



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>配列</td><td>必須</td><td>行を取り出したい配列またはセル範囲を指定します</td></tr><tr><td>行番号1</td><td>必須</td><td>取り出したい行の番号を指定します。配列の先頭行が「1」です</td></tr><tr><td>行番号2, &#8230;</td><td>省略可</td><td>追加で取り出したい行番号を指定します。複数指定できます</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc5">引数「配列」</span></h3>



<p>行を取り出す対象の配列やセル範囲を指定します。テーブル名やセル範囲（A1:D10など）を渡せます。他の関数の結果を配列として渡すことも可能です。</p>



<h3 class="wp-block-heading"><span id="toc6">引数「行番号」</span></h3>



<p>配列の中から何行目を取り出すかを数値で指定します。先頭行が「1」、2行目が「2」です。</p>



<p>複数の行を取り出したい場合は、カンマで区切って指定します。たとえば 2, 5 と書けば2行目と5行目を取り出せます。</p>



<p>同じ行番号を複数回指定することもできます。1, 1, 3 と書けば、1行目が2回と3行目が返されます。</p>



<h3 class="wp-block-heading"><span id="toc7">負の数で末尾から指定</span></h3>



<p>行番号に<strong>負の数</strong>を使うと、末尾からカウントできます。</p>



<ul class="wp-block-list"><li><strong>-1</strong>: 最後の行</li><li><strong>-2</strong>: 最後から2番目の行</li><li><strong>-3</strong>: 最後から3番目の行</li></ul>



<p>データの行数がわからなくても、末尾のデータを取り出せるのが便利なポイントです。</p>



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



<p>以下のサンプルデータを使って説明しますね。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th><th>C</th><th>D</th></tr></thead><tbody><tr><td>1</td><td>名前</td><td>部署</td><td>売上</td><td>評価</td></tr><tr><td>2</td><td>田中</td><td>営業</td><td>500</td><td>A</td></tr><tr><td>3</td><td>鈴木</td><td>企画</td><td>320</td><td>B</td></tr><tr><td>4</td><td>佐藤</td><td>営業</td><td>450</td><td>A</td></tr><tr><td>5</td><td>山田</td><td>総務</td><td>280</td><td>C</td></tr><tr><td>6</td><td>高橋</td><td>企画</td><td>410</td><td>B</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc9">特定の行を1行取り出す</span></h3>



<p>2行目（田中さんのデータ）を取り出してみましょう。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, 2)</code></pre>



<p>結果は 田中 | 営業 | 500 | A です。配列の2行目がそのまま返されます。</p>



<h3 class="wp-block-heading"><span id="toc10">複数行をまとめて取り出す</span></h3>



<p>2行目と4行目をまとめて取り出す場合はこうです。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, 2, 4)</code></pre>



<p>結果は以下の2行が返されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>田中</th><th>営業</th><th>500</th><th>A</th></tr></thead><tbody><tr><td>佐藤</td><td>営業</td><td>450</td><td>A</td></tr></tbody></table></figure>



<p>営業部だけ抜き出したいときなどに使えますね。</p>



<h3 class="wp-block-heading"><span id="toc11">行の順番を入れ替えて取り出す</span></h3>



<p>指定した順番どおりに結果が返されるのもポイントです。4行目→2行目の順で指定してみましょう。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, 4, 2)</code></pre>



<p>結果は佐藤さんが先、田中さんが後になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>佐藤</th><th>営業</th><th>450</th><th>A</th></tr></thead><tbody><tr><td>田中</td><td>営業</td><td>500</td><td>A</td></tr></tbody></table></figure>



<p>行番号の指定順がそのまま出力順になります。並べ替えにも応用できますよ。</p>



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



<h3 class="wp-block-heading"><span id="toc13">最終行のデータを取り出す（負の数）</span></h3>



<p>「表の最後のデータだけ見たい」という場面で便利です。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, -1)</code></pre>



<p>結果は 高橋 | 企画 | 410 | B です。最後から2行分を取り出す場合は -1, -2 と指定します。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, -1, -2)</code></pre>



<p>データが追加されても常に末尾から取り出せます。行数を数える必要がないのが便利ですね。</p>



<h3 class="wp-block-heading"><span id="toc14">SEQUENCEと組み合わせて逆順に並べ替える</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-sequence/">SEQUENCE関数</a>を使うと、行番号を動的に生成できます。これを利用してデータを逆順に並べ替えてみましょう。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, SEQUENCE(6,,6,-1))</code></pre>



<p>SEQUENCE(6,,6,-1) は {6,5,4,3,2,1} を生成します。つまり6行目から1行目の順に取り出すわけです。</p>



<p>古いデータが上にある表を、新しい順に並べ替えたいときに重宝します。</p>



<p>偶数行だけを取り出すことも可能です。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, SEQUENCE(3,,2,2))</code></pre>



<p>SEQUENCE(3,,2,2) は {2,4,6} を生成します。2行目・4行目・6行目が返されますよ。</p>



<h3 class="wp-block-heading"><span id="toc15">テーブルと組み合わせる</span></h3>



<p>Excelのテーブルを直接指定することもできます。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(テーブル1, 1, 3)</code></pre>



<p>テーブルの場合、見出し行は含まれません。テーブルの1行目はデータの先頭行を指します。テーブルにデータが追加されると、負の数を使った指定も自動的に更新されます。</p>



<h3 class="wp-block-heading"><span id="toc16">FILTER・SORTとの組み合わせ</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数</a>の結果をCHOOSEROWSに渡すパターンも実務で便利です。</p>



<p>たとえば、FILTER関数で絞り込んだ結果の先頭3行を取り出す場合はこうなります。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(FILTER(A2:D6, C2:C6&gt;=400), 1, 2)</code></pre>



<p>FILTER関数で売上400以上を抽出し、その結果の1行目と2行目を取り出します。条件抽出と行選択を1つの数式で完結できるのがメリットです。</p>



<p>SORT関数で並べ替えた結果から上位だけ取り出す、といった使い方もできますよ。</p>



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



<p>「行を取り出すなら<a href="https://mashukabu.com/excel-function-howto-use-index/">INDEX関数</a>でもできるのでは？」と思った方もいるかもしれませんね。たしかに似ていますが、大きな違いがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>CHOOSEROWS関数</th><th>INDEX関数</th></tr></thead><tbody><tr><td>複数行の取り出し</td><td>できる（カンマで行番号を列挙）</td><td>基本は1行ずつ</td></tr><tr><td>負の数（末尾指定）</td><td>使える（-1で最終行）</td><td>使えない</td></tr><tr><td>行順序の入れ替え</td><td>できる（指定順で返す）</td><td>できない</td></tr><tr><td>対応バージョン</td><td>Microsoft 365 / Excel 2024</td><td>全バージョン</td></tr><tr><td>列の同時指定</td><td>できない（行のみ）</td><td>できる（行と列を同時指定）</td></tr></tbody></table></figure>



<p><strong>使い分けのポイント</strong>は次のとおりです。</p>



<ul class="wp-block-list"><li><strong>1行だけ取り出す・古いバージョンを使っている場合</strong>: INDEX関数が確実です</li><li><strong>複数行をまとめて取り出す・末尾から指定したい場合</strong>: CHOOSEROWS関数が便利です</li><li><strong>行と列を同時に絞り込みたい場合</strong>: INDEX関数か、CHOOSEROWSとCHOOSECOLSの組み合わせを使います</li></ul>



<p>Microsoft 365やExcel 2024を使っているなら、複数行の抽出にはCHOOSEROWSのほうがシンプルに書けますよ。</p>



<h2 class="wp-block-heading"><span id="toc18">CHOOSEROWSとCHOOSECOLSの違い</span></h2>



<h3 class="wp-block-heading"><span id="toc19">行と列の違い</span></h3>



<p><a href="https://mashukabu.com/excel-function-howto-use-choosecols/">CHOOSECOLS関数</a>はCHOOSEROWSの姉妹関数です。違いはシンプルで、<strong>取り出す方向</strong>が異なります。</p>



<ul class="wp-block-list"><li><strong>CHOOSEROWS</strong>: 指定した<strong>行</strong>を取り出す（横方向のデータ）</li><li><strong>CHOOSECOLS</strong>: 指定した<strong>列</strong>を取り出す（縦方向のデータ）</li></ul>



<p>どちらも負の数が使える点や、複数指定・順序変更ができる点は共通しています。</p>



<h3 class="wp-block-heading"><span id="toc20">組み合わせて使う方法</span></h3>



<p>CHOOSEROWSとCHOOSECOLSを組み合わせると、行と列の両方を絞り込めます。</p>



<pre class="wp-block-code"><code>=CHOOSEROWS(CHOOSECOLS(A1:D6, 1, 3), 2, 4)</code></pre>



<p>この数式は以下の2ステップで動作します。</p>



<ol class="wp-block-list"><li>CHOOSECOLS(A1:D6, 1, 3) → A列（名前）とC列（売上）を取り出す</li><li>CHOOSEROWS(&#8230;, 2, 4) → その結果の2行目と4行目を取り出す</li></ol>



<p>最終結果は次のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>田中</th><th>500</th></tr></thead><tbody><tr><td>山田</td><td>280</td></tr></tbody></table></figure>



<p>必要な行と列だけをピンポイントで取り出せます。大きな表から特定のデータだけを抜き出すときに便利ですよ。</p>



<p>似た機能を持つ<a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数</a>は「不要な行・列を除く」アプローチです。CHOOSEROWSは「必要な行を選ぶ」アプローチなので、目的に応じて使い分けてくださいね。</p>



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



<h3 class="wp-block-heading"><span id="toc22">#VALUE!エラー</span></h3>



<p>CHOOSEROWS関数で最も発生しやすいエラーです。</p>



<p><strong>原因1: 行番号に0を指定している</strong></p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, 0)  → #VALUE!エラー</code></pre>



<p>行番号は1以上、または-1以下で指定します。0は使えません。</p>



<p><strong>原因2: 配列の行数を超える番号を指定している</strong></p>



<pre class="wp-block-code"><code>=CHOOSEROWS(A1:D6, 7)  → #VALUE!エラー</code></pre>



<p>A1:D6は6行しかないため、7を指定するとエラーです。負の数も同様で、-7と指定してもエラーになります。配列の行数を確認してみてください。</p>



<h3 class="wp-block-heading"><span id="toc23">スピルエラー（#SPILL!）</span></h3>



<p>CHOOSEROWS関数の結果が展開される先のセルに、すでにデータが入っているとスピルエラーになります。</p>



<p>結果が展開される範囲のセルを空にすれば解消されますよ。</p>



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



<p>ExcelのCHOOSEROWS関数について解説しました。ポイントを整理しておきましょう。</p>



<ul class="wp-block-list"><li>CHOOSEROWS関数は、配列から指定した行を取り出す関数</li><li>構文は <code>=CHOOSEROWS(配列, 行番号1, [行番号2], ...)</code> で、行番号は複数指定できる</li><li>負の数を使うと末尾からカウントできる（-1で最終行）</li><li>行の順番を入れ替えて取り出すことも可能</li><li><a href="https://mashukabu.com/excel-function-howto-use-sequence/">SEQUENCE関数</a>と組み合わせると、逆順や偶数行の抽出もできる</li><li><a href="https://mashukabu.com/excel-function-howto-use-index/">INDEX関数</a>は全バージョン対応だが、複数行の取り出しにはCHOOSEROWSが便利</li><li><a href="https://mashukabu.com/excel-function-howto-use-choosecols/">CHOOSECOLS関数</a>と組み合わせれば、行と列の両方を自由に絞り込める</li></ul>



<p>配列から必要なデータだけを取り出す場面で、ぜひ活用してみてくださいね。</p>



<h3 class="wp-block-heading"><span id="toc25">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-choosecols/">CHOOSECOLS関数の使い方</a> &#8211; 配列から指定した列を取り出す</li><li><a href="https://mashukabu.com/excel-function-howto-use-index/">INDEX関数の使い方</a> &#8211; 行と列を指定してデータを取り出す</li><li><a href="https://mashukabu.com/excel-function-howto-use-filter/">FILTER関数の使い方</a> &#8211; 条件に合うデータを抽出する</li><li><a href="https://mashukabu.com/excel-function-howto-use-sort/">SORT関数の使い方</a> &#8211; データを並べ替える</li><li><a href="https://mashukabu.com/excel-function-howto-use-sequence/">SEQUENCE関数の使い方</a> &#8211; 連続する数値の配列を生成する</li><li><a href="https://mashukabu.com/excel-function-howto-use-drop/">DROP関数の使い方</a> &#8211; 配列の先頭や末尾の行・列を除く</li><li><a href="https://mashukabu.com/excel-function-howto-use-vstack/">VSTACK関数の使い方</a> &#8211; 配列を縦方向に結合する</li><li><a href="https://mashukabu.com/excel-function-howto-use-hstack/">HSTACK関数の使い方</a> &#8211; 配列を横方向に結合する</li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-chooserows/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのHSTACK関数の使い方｜複数の表を横に結合する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-hstack/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-hstack/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Mon, 10 Oct 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[FILTER関数]]></category>
		<category><![CDATA[HSTACK関数]]></category>
		<category><![CDATA[SORT関数]]></category>
		<category><![CDATA[VSTACK関数]]></category>
		<category><![CDATA[スピル]]></category>
		<category><![CDATA[動的配列関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2826</guid>

					<description><![CDATA[ExcelのHSTACK関数の使い方を実例付きで解説。複数の表を横方向に結合する基本操作から、FILTER・SORTとの組み合わせ、エラー対処法まで初心者にもわかりやすく紹介します。]]></description>
										<content:encoded><![CDATA[
<p>部署ごとの売上データに、別の表から「評価」や「前年比」の列を追加したいこと、ありませんか？<br>いちいちコピペで列を挿入していると、貼り付け位置がズレたり、行の順番が狂ったり。</p>



<p>手作業での横方向の結合って、意外とミスが出やすいですよね。</p>



<p>ExcelのHSTACK関数を使えば、複数の表を横方向にピタッと結合できます。<br>数式ひとつで列を追加できるので、手作業の心配がなくなりますよ。</p>



<p>この記事では、HSTACK関数の基本から実践的な使い方まで、わかりやすく解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-10" checked><label class="toc-title" for="toc-checkbox-10">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのHSTACK関数とは？複数の表を横方向に結合する関数</a></li><li><a href="#toc2" tabindex="0">HSTACK関数の基本的な書き方（構文・引数）</a><ol><li><a href="#toc3" tabindex="0">引数：配列（array）の指定方法</a></li><li><a href="#toc4" tabindex="0">戻り値：スピル（動的配列）で結果が展開される</a></li></ol></li><li><a href="#toc5" tabindex="0">HSTACK関数の使い方を実例で解説</a><ol><li><a href="#toc6" tabindex="0">基本：2つの表を横に結合する</a></li><li><a href="#toc7" tabindex="0">3つ以上の表をまとめて結合する</a></li><li><a href="#toc8" tabindex="0">行数が異なる表を結合するとどうなる？（#N/Aエラー対策）</a></li></ol></li><li><a href="#toc9" tabindex="0">HSTACK関数とVSTACK関数の違い</a></li><li><a href="#toc10" tabindex="0">HSTACK関数×他の関数の組み合わせテクニック</a><ol><li><a href="#toc11" tabindex="0">FILTER関数と組み合わせて結合後に絞り込む</a></li><li><a href="#toc12" tabindex="0">SORT関数と組み合わせて結合後に並べ替える</a></li></ol></li><li><a href="#toc13" tabindex="0">HSTACK関数でよくあるエラーと対処法</a><ol><li><a href="#toc14" tabindex="0">#SPILL!エラー：結果の出力先がふさがっている</a></li><li><a href="#toc15" tabindex="0">#NAME?エラー：対応バージョンの確認</a></li></ol></li><li><a href="#toc16" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ExcelのHSTACK関数とは？複数の表を横方向に結合する関数</span></h2>



<p>HSTACK関数は、複数の表（配列）を<strong>横方向に結合</strong>する関数です。<br>読み方は「エイチスタック」。<br>「H」はHorizontal（水平）、「STACK」は積み重ねるという意味です。</p>



<p>たとえば、社員名簿の右側に評価テーブルを結合するイメージです。<br>左の表の右隣に、別の表がスッとくっつく感じですね。</p>



<p><!-- screenshot: HSTACK関数のイメージ図（2つの表が横に結合される概念図） --></p>



<p>これまではコピー＆ペーストで列を追加していた作業が、数式1つで完了します。<br>しかも元データが更新されると、結合結果も自動で更新されますよ。</p>



<p><strong>対応バージョン</strong>は以下のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>バージョン</th><th>対応状況</th></tr></thead><tbody><tr><td>Microsoft 365</td><td>対応</td></tr><tr><td>Excel 2024</td><td>対応</td></tr><tr><td>Excel 2021以前</td><td>非対応</td></tr></tbody></table></figure>



<p>お使いのバージョンが対応しているか、あらかじめ確認しておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc2">HSTACK関数の基本的な書き方（構文・引数）</span></h2>



<p>HSTACK関数の構文はとてもシンプルです。</p>



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



<p>結合したい表を、カンマ区切りで順番に指定するだけです。<br>引数は最大254個まで指定できます。</p>



<h3 class="wp-block-heading"><span id="toc3">引数：配列（array）の指定方法</span></h3>



<p>引数に指定できるものは以下の3パターンです。</p>



<ul class="wp-block-list"><li><strong>セル範囲</strong>: <code>A2:B10</code> のような通常の範囲指定</li><li><strong>別シートの範囲</strong>: <code>評価!A2:B10</code> のようにシート名付きで指定</li><li><strong>配列定数</strong>: <code>{1;2;3}</code> のような直接入力の配列</li></ul>



<p>実務では、セル範囲や別シートの範囲を使うことがほとんどです。<br>別シートに評価データや属性データがある場合は、シート名を付けて指定しましょう。</p>



<h3 class="wp-block-heading"><span id="toc4">戻り値：スピル（動的配列）で結果が展開される</span></h3>



<p>HSTACK関数の結果は<strong>スピル</strong>で展開されます。</p>



<p>スピルとは、1つのセルに数式を入力するだけで、結果が隣接セルに自動展開される仕組みです。<br>数式を入力するのは先頭の1セルだけでOK。<br>残りのセルには自動で値が表示されます。</p>



<p><!-- screenshot: スピルの動作（1セルに数式を入力→右方向と下方向に結果が展開される様子） --></p>



<p>スピル範囲のセルを選択すると、青い枠線が表示されます。<br>この枠線がスピルの目印ですよ。</p>



<h2 class="wp-block-heading"><span id="toc5">HSTACK関数の使い方を実例で解説</span></h2>



<p>ここからは、社員データを使って具体的な使い方を見ていきましょう。</p>



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



<p>社員名簿と評価テーブルを横に結合してみます。</p>



<p><strong>サンプルデータ</strong></p>



<p>社員名簿（A2:C5）:</p>



<figure class="wp-block-table"><table><thead><tr><th>社員ID</th><th>氏名</th><th>部署</th></tr></thead><tbody><tr><td>001</td><td>佐藤</td><td>営業</td></tr><tr><td>002</td><td>田中</td><td>経理</td></tr><tr><td>003</td><td>鈴木</td><td>総務</td></tr></tbody></table></figure>



<p>評価テーブル（E2:F5）:</p>



<figure class="wp-block-table"><table><thead><tr><th>評価</th><th>前年比</th></tr></thead><tbody><tr><td>A</td><td>120%</td></tr><tr><td>B</td><td>95%</td></tr><tr><td>A</td><td>110%</td></tr></tbody></table></figure>



<p><strong>数式</strong></p>



<pre class="wp-block-code"><code>=HSTACK(A2:C5, E2:F5)</code></pre>



<p><!-- screenshot: 2つの表をHSTACKで横に結合した結果（3行×5列の表が表示される） --></p>



<p>これだけで、2つの表が横にきれいに結合されます。<br>ヘッダー行を除いたデータ部分だけを指定するのがポイントです。</p>



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



<p>結合する表が3つ以上ある場合も、引数を追加するだけです。</p>



<pre class="wp-block-code"><code>=HSTACK(A2:C5, E2:F5, H2:H5)</code></pre>



<p>社員名簿・評価テーブル・備考列の3つを一気に結合できます。<br>引数はカンマで区切って、どんどん追加してください。</p>



<p><!-- screenshot: 3つの表をHSTACKで結合した結果 --></p>



<p>データソースが増えても数式に追加するだけなので、管理がラクですよ。</p>



<h3 class="wp-block-heading"><span id="toc8">行数が異なる表を結合するとどうなる？（#N/Aエラー対策）</span></h3>



<p>結合する表の行数が異なる場合、少し注意が必要です。<br>HSTACK関数は、不足する行を<strong>#N/Aエラー</strong>で自動的に埋めます。</p>



<p>たとえば、4行の表と6行の表を結合すると、4行の表側の5〜6行目に#N/Aが入ります。</p>



<p><!-- screenshot: 行数不一致でHSTACKした結果（#N/Aが表示される様子） --></p>



<p>この#N/Aを消したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a>で囲みましょう。</p>



<pre class="wp-block-code"><code>=IFERROR(HSTACK(A2:C5, E2:F7), &quot;&quot;)</code></pre>



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



<h2 class="wp-block-heading"><span id="toc9">HSTACK関数とVSTACK関数の違い</span></h2>



<p>HSTACK関数とよく比較されるのが<a href="https://mashukabu.com/excel-function-howto-use-vstack/">VSTACK関数</a>です。<br>どちらも表を結合する関数ですが、方向が違います。</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>月別・支店別の表を1つにまとめる</td></tr><tr><td>行数・列数の不一致時</td><td>不足行を#N/Aで埋める</td><td>不足列を#N/Aで埋める</td></tr></tbody></table></figure>



<p>使い分けはシンプルです。</p>



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



<p>たとえば「社員名簿に評価列を追加したい」ならHSTACKです。<br>「月ごとの売上データをまとめたい」ならVSTACKを使いましょう。</p>



<h2 class="wp-block-heading"><span id="toc10">HSTACK関数×他の関数の組み合わせテクニック</span></h2>



<p>HSTACK関数は、他の関数と組み合わせると真価を発揮します。<br>ここでは実務で特に便利な2パターンを紹介します。</p>



<h3 class="wp-block-heading"><span id="toc11">FILTER関数と組み合わせて結合後に絞り込む</span></h3>



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



<p>たとえば、社員名簿と評価を結合した後、評価が「A」の社員だけ抽出する場合です。</p>



<pre class="wp-block-code"><code>=FILTER(HSTACK(A2:C5, E2:F5), E2:E5=&quot;A&quot;)</code></pre>



<p><!-- screenshot: HSTACK+FILTERで評価Aの社員を抽出した結果 --></p>



<p>ちょっとむずかしく見えますが、やっていることはシンプルです。<br>HSTACKで結合した表に対して、FILTERで条件を指定しているだけですよ。</p>



<p>FILTER関数の条件には、元のセル範囲を指定するのがコツです。<br>結合後の配列ではなく、元の評価列（E2:E5）で絞り込みましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">SORT関数と組み合わせて結合後に並べ替える</span></h3>



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



<p>前年比（5列目）の降順で並べ替えるには、次のように書きます。</p>



<pre class="wp-block-code"><code>=SORT(HSTACK(A2:C5, E2:F5), 5, -1)</code></pre>



<p><!-- screenshot: HSTACK+SORTで前年比の降順に並べ替えた結果 --></p>



<p>第2引数の <code>5</code> は並べ替えの基準列（前年比列）です。<br>第3引数の <code>-1</code> は降順を意味します。</p>



<p>結合と並べ替えが1つの数式で完結するので、作業効率がグッと上がります。<br>ぜひ試してみてください。</p>



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



<p>HSTACK関数を使っていると、エラーに遭遇することがあります。<br>代表的な2つのエラーと対処法を押さえておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc14">#SPILL!エラー：結果の出力先がふさがっている</span></h3>



<p>#SPILL!エラーは、スピルの展開先に問題がある場合に発生します。<br>主な原因は次の4つです。</p>



<ul class="wp-block-list"><li><strong>スピル先のセルにデータがある</strong>: 空のセルを確保する</li><li><strong>結合セルがある</strong>: スピル範囲内の結合を解除する</li><li><strong>テーブル内で使用している</strong>: テーブル外のセルに数式を入力する</li><li><strong>シートの端を超える</strong>: 出力先の位置を左に移動する</li></ul>



<p>最も多いのは、スピル先にデータが残っているケースです。<br>数式を入力するセルの右側に、十分な空きスペースを確保してください。</p>



<p>エラー値の詳しい解説は<a href="https://mashukabu.com/excel-error-value-list/">Excelエラー値一覧</a>もあわせてどうぞ。</p>



<h3 class="wp-block-heading"><span id="toc15">#NAME?エラー：対応バージョンの確認</span></h3>



<p>#NAME?エラーが出る場合は、バージョンを確認しましょう。<br>HSTACK関数はMicrosoft 365またはExcel 2024でのみ使えます。</p>



<p>Excel 2021以前では関数名が認識されず、#NAME?エラーになります。</p>



<p>バージョンの確認方法は、<strong>ファイル → アカウント</strong>の画面です。<br>「Microsoft 365」または「Excel 2024」と表示されていれば対応していますよ。</p>



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



<p>HSTACK関数は、複数の表を横方向に結合する関数です。<br>この記事のポイントをおさらいしましょう。</p>



<ul class="wp-block-list"><li><strong>構文</strong>: <code>=HSTACK(配列1, [配列2], ...)</code> で簡単に結合できる</li><li><strong>スピル</strong>: 数式は1セルに入力するだけで結果が自動展開される</li><li><strong>行数不一致</strong>: #N/Aで埋まるので、IFERRORで空白に置換する</li><li><strong>VSTACK関数との違い</strong>: HSTACKは横、VSTACKは縦に結合する</li><li><strong>組み合わせ</strong>: FILTER関数やSORT関数と使えば、結合＋加工が1つの数式で完結する</li><li><strong>対応バージョン</strong>: Microsoft 365またはExcel 2024が必要</li></ul>



<p>社員データに評価列を追加したり、別シートの情報を横に並べたい場面で、ぜひHSTACK関数を活用してみてください。<br>一度数式を組んでしまえば、データ更新のたびにコピペする手間がなくなりますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-hstack/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
