<?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>GROUPBY関数 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/groupby%e9%96%a2%e6%95%b0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Sun, 17 May 2026 00:33:15 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>GROUPBY関数 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>ExcelのGROUPBY関数の使い方｜グループ集計を一発で作成</title>
		<link>https://mashukabu.com/excel-function-howto-use-groupby/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-groupby/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 04 Apr 2026 04:32:07 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[GROUPBY関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[グループ集計]]></category>
		<category><![CDATA[データ集計]]></category>
		<category><![CDATA[動的配列]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5766</guid>

					<description><![CDATA[ExcelのGROUPBY関数でデータをグループごとに集計する方法を解説。SUM・AVERAGE・COUNTなど集計関数との組み合わせ、複数列でのグループ化、ソート、PIVOTBY関数との違いまで実務例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">売上データを部門ごとに合計したい、担当者ごとの平均単価を出したい。こういったグループ集計、ピボットテーブルを作るほどでもないけど手作業は面倒ですよね。GROUPBY関数を使えば、数式ひとつでグループごとの集計表を自動生成できます。この記事では基本の書き方から複数列でのグループ化、ソート、実務パターンまで丸ごと紹介します。</p>



<p class="wp-block-paragraph">この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>売上や経費データをカテゴリごとにサッと合計・平均したい</li><li>ピボットテーブルを使わずに数式だけでグループ集計を作りたい</li><li>GROUPBY関数とPIVOTBY関数の違いを知りたい</li></ul>




  <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">GROUPBY関数とは？</a></li><li><a href="#toc2" tabindex="0">GROUPBY関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">GROUPBY関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">1列でグループ集計する</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">GROUPBY関数の実務活用パターン</a><ol><li><a href="#toc10" tabindex="0">総計行を追加する</a></li><li><a href="#toc11" tabindex="0">結果を降順でソートする</a></li><li><a href="#toc12" tabindex="0">特定の条件でフィルターする</a></li><li><a href="#toc13" tabindex="0">複数列でグループ化する</a></li><li><a href="#toc14" tabindex="0">LAMBDA関数でカスタム集計する</a></li></ol></li><li><a href="#toc15" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc16" tabindex="0">GROUPBY関数とPIVOTBY関数の違い</a></li><li><a href="#toc17" tabindex="0">SUMIFS関数との比較</a></li><li><a href="#toc18" tabindex="0">まとめ</a><ol><li><a href="#toc19" tabindex="0">関連記事</a></li><li><a href="#toc20" tabindex="0">関数一覧</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">GROUPBY（グループバイ）関数は、データの行を指定した列でグループ化し、集計関数を適用して結果を返す関数です。英語の「group by」は「〜ごとにまとめる」という意味で、SQLのGROUP BY句と同じ発想の関数です。</p>



<p class="wp-block-paragraph">たとえば売上データの「部門」列でグループ化して「金額」列をSUMで合計すれば、部門ごとの売上合計表が数式ひとつで出来上がります。結果はスピル（動的配列）で自動展開されるので、データが増えても数式を修正する必要がありません。</p>



<p class="wp-block-paragraph">GROUPBY関数はMicrosoft 365（Office 365）専用の関数です。Excel 2021以前のバージョンでは使用できません。</p>



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



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



<pre class="wp-block-code"><code>=GROUPBY(行フィールド, 値, 集計関数, [フィールドヘッダー], [合計の深さ], [並べ替え順], [フィルター配列], [フィールドの関係])</code></pre>



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



<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>集計に使う関数（SUM, AVERAGE, COUNTなど）</td></tr><tr><td>フィールドヘッダー</td><td>省略可</td><td>ヘッダー行の扱い。0=なし、1=あり（非表示）、2=あり（表示）、3=自動生成。既定は2</td></tr><tr><td>合計の深さ</td><td>省略可</td><td>総計・小計の表示。0=なし、1=総計あり、2=総計＋小計、-1=総計のみ（データ行なし）。既定は0</td></tr><tr><td>並べ替え順</td><td>省略可</td><td>結果の並べ替え。0=昇順、1=降順。既定は0（昇順）</td></tr><tr><td>フィルター配列</td><td>省略可</td><td>行を絞り込むTRUE/FALSEの配列</td></tr><tr><td>フィールドの関係</td><td>省略可</td><td>0=階層（既定）、1=テーブル形式</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>必須の引数は3つだけです。まずは「行フィールド」「値」「集計関数」の3つを指定する基本形をおさえましょう。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc6">1列でグループ集計する</span></h3>



<p class="wp-block-paragraph">次のような売上データがA1:C11にあるとします（1行目がヘッダー）。</p>



<figure class="wp-block-table"><table><thead><tr><th>部門</th><th>商品</th><th>金額</th></tr></thead><tbody><tr><td>営業部</td><td>商品A</td><td>50000</td></tr><tr><td>開発部</td><td>商品B</td><td>30000</td></tr><tr><td>営業部</td><td>商品C</td><td>45000</td></tr><tr><td>開発部</td><td>商品A</td><td>25000</td></tr><tr><td>総務部</td><td>商品B</td><td>15000</td></tr><tr><td>営業部</td><td>商品B</td><td>60000</td></tr><tr><td>総務部</td><td>商品C</td><td>20000</td></tr><tr><td>開発部</td><td>商品C</td><td>35000</td></tr><tr><td>営業部</td><td>商品A</td><td>40000</td></tr><tr><td>総務部</td><td>商品A</td><td>18000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">部門ごとの売上合計を求めるには、次のように書きます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,SUM)</code></pre>



<p class="wp-block-paragraph">結果はスピルで展開され、以下のような表が自動生成されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>営業部</th><th>195000</th></tr></thead><tbody><tr><td>開発部</td><td>90000</td></tr><tr><td>総務部</td><td>53000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">行フィールドにA2:A11（部門列）、値にC2:C11（金額列）、集計関数にSUMを指定しただけです。SUMIFS関数で部門ごとに数式を並べる必要がなくなります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>集計関数の引数はSUM、AVERAGE、COUNT、MAX、MINなど、通常のExcel関数名をそのまま指定します。カッコは付けません。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc7">ヘッダー付きで集計する</span></h3>



<p class="wp-block-paragraph">データにヘッダー行が含まれている場合は、ヘッダー行ごと範囲に含めて第4引数を指定すると、結果にもヘッダーが表示されます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A1:A11,C1:C11,SUM,2)</code></pre>



<p class="wp-block-paragraph">第4引数の「2」は「ヘッダーあり・表示する」を意味します。結果の1行目に「部門」「金額の合計」のようなヘッダーが自動表示されます。</p>



<h3 class="wp-block-heading"><span id="toc8">集計関数を変えてみる</span></h3>



<p class="wp-block-paragraph">集計関数の部分を変えるだけで、さまざまな集計ができます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,AVERAGE)</code></pre>



<p class="wp-block-paragraph">部門ごとの平均金額を求めます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,COUNT)</code></pre>



<p class="wp-block-paragraph">部門ごとの件数を求めます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,MAX)</code></pre>



<p class="wp-block-paragraph">部門ごとの最大金額を求めます。</p>



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



<h3 class="wp-block-heading"><span id="toc10">総計行を追加する</span></h3>



<p class="wp-block-paragraph">第5引数（合計の深さ）に1を指定すると、結果の最後に総計行が追加されます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,SUM,,1)</code></pre>



<p class="wp-block-paragraph">第4引数は省略（既定値を使用）するので、カンマだけ入れています。結果は次のようになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>営業部</th><th>195000</th></tr></thead><tbody><tr><td>開発部</td><td>90000</td></tr><tr><td>総務部</td><td>53000</td></tr><tr><td>総計</td><td>338000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">報告資料に使うときは総計行があると便利ですよね。</p>



<h3 class="wp-block-heading"><span id="toc11">結果を降順でソートする</span></h3>



<p class="wp-block-paragraph">第6引数に1を指定すると、結果が降順（大きい順）に並びます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,SUM,,,1)</code></pre>



<p class="wp-block-paragraph">売上が大きい部門から順に表示されるので、ランキング形式のレポートを作りたいときに使えます。</p>



<h3 class="wp-block-heading"><span id="toc12">特定の条件でフィルターする</span></h3>



<p class="wp-block-paragraph">第7引数にTRUE/FALSEの配列を渡すと、条件に合う行だけを集計対象にできます。たとえば金額が30000以上のデータだけで集計する場合です。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,SUM,,,,(C2:C11&gt;=30000))</code></pre>



<p class="wp-block-paragraph">金額が30000未満の行は除外された状態で、部門ごとの合計が計算されます。</p>



<h3 class="wp-block-heading"><span id="toc13">複数列でグループ化する</span></h3>



<p class="wp-block-paragraph">行フィールドに複数列を指定すると、組み合わせでグループ化できます。部門と商品の両方でグループ化して集計する場合は、HSTACK関数で列を結合して渡します。</p>



<pre class="wp-block-code"><code>=GROUPBY(HSTACK(A2:A11,B2:B11),C2:C11,SUM)</code></pre>



<p class="wp-block-paragraph">結果は「営業部 × 商品A」「営業部 × 商品B」のように、すべての組み合わせごとに集計値が表示されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>営業部</th><th>商品A</th><th>90000</th></tr></thead><tbody><tr><td>営業部</td><td>商品B</td><td>60000</td></tr><tr><td>営業部</td><td>商品C</td><td>45000</td></tr><tr><td>開発部</td><td>商品A</td><td>25000</td></tr><tr><td>開発部</td><td>商品B</td><td>30000</td></tr><tr><td>開発部</td><td>商品C</td><td>35000</td></tr><tr><td>総務部</td><td>商品A</td><td>18000</td></tr><tr><td>総務部</td><td>商品B</td><td>15000</td></tr><tr><td>総務部</td><td>商品C</td><td>20000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ちょっとピボットテーブルに近い表が、数式だけで作れてしまいます。</p>



<h3 class="wp-block-heading"><span id="toc14">LAMBDA関数でカスタム集計する</span></h3>



<p class="wp-block-paragraph">第3引数にLAMBDA関数を指定すれば、独自の集計ロジックも使えます。たとえば最大値と最小値の差（レンジ）を求める場合です。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A11,C2:C11,LAMBDA(x,MAX(x)-MIN(x)))</code></pre>



<p class="wp-block-paragraph">部門ごとに金額の振れ幅（最大値 &#8211; 最小値）が算出されます。標準の集計関数にない計算もLAMBDA関数で自由に定義できるのがGROUPBY関数の強みです。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#NAME?エラー</td><td>Excel 2021以前のバージョンで使用した</td><td>GROUPBY関数はMicrosoft 365専用です。バージョンを確認してください</td></tr><tr><td>#VALUE!エラー</td><td>行フィールドと値の行数が一致しない</td><td>グループ化列と集計列の行数を揃えてください。ヘッダーの有無も統一します</td></tr><tr><td>#SPILL!エラー</td><td>スピル先のセルにデータが入っている</td><td>結果が展開されるセル範囲を空にしてください</td></tr><tr><td>#CALC!エラー</td><td>集計関数の指定が正しくない</td><td>SUM、AVERAGE、COUNTなどの関数名をカッコなしで指定してください。「SUM()」ではなく「SUM」です</td></tr><tr><td>想定外のグループが表示される</td><td>同じに見える値に余分なスペースがある</td><td><a href="https://mashukabu.com/excel-function-howto-use-trim/">TRIM関数</a>でスペースを除去してからグループ化してください</td></tr><tr><td>結果が1行しか返らない</td><td>全データが同じグループに分類された</td><td>行フィールドの列指定が正しいか確認してください</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc16">GROUPBY関数とPIVOTBY関数の違い</span></h2>



<p class="wp-block-paragraph">GROUPBY関数と同時期に追加されたPIVOTBY関数も、データを集計する関数です。一見似ていますが、出力形式がまったく異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>GROUPBY関数</th><th>PIVOTBY関数</th></tr></thead><tbody><tr><td>出力形式</td><td><strong>縦方向のリスト</strong>（行方向に展開）</td><td><strong>クロス集計表</strong>（行と列の2軸で展開）</td></tr><tr><td>グループ化の軸</td><td>行方向のみ（1軸）</td><td>行と列の2軸</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></tbody></table></figure>



<p class="wp-block-paragraph">「部門ごとの売上合計」のように1軸でまとめたいならGROUPBY関数、「部門 × 四半期」のようにクロス表を作りたいならPIVOTBY関数です。</p>



<p class="wp-block-paragraph">たとえば同じデータから「部門 × 商品」のクロス集計表を作るなら、PIVOTBY関数のほうが適しています。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A11,B2:B11,C2:C11,SUM)</code></pre>



<p class="wp-block-paragraph">行に部門、列に商品が並ぶクロス表が出力されます。GROUPBYでは複数列をHSTACKで結合してリスト形式で出すことになるので、見た目の違いを意識して使い分けてください。</p>



<h2 class="wp-block-heading"><span id="toc17">SUMIFS関数との比較</span></h2>



<p class="wp-block-paragraph">グループ集計といえば<a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS関数</a>を使っている方も多いですよね。GROUPBY関数との違いを整理します。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>GROUPBY関数</th><th>SUMIFS関数</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>Microsoft 365のみ</td><td>Excel 2007以降</td></tr><tr><td>処理速度</td><td>大量データでも高速</td><td>データ量が多いと重くなることがある</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Microsoft 365を使っているなら、グループ集計はGROUPBY関数に置き換えたほうがメンテナンスが楽です。グループが増えても数式を追加する必要がないので、運用コストが大幅に下がります。</p>



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



<p class="wp-block-paragraph">GROUPBY関数は「データを指定した列でグループ化し、集計結果を一覧で返す」関数です。</p>



<ul class="wp-block-list"><li>行フィールド・値・集計関数の3つを指定するだけで、グループごとの集計表が自動生成される</li><li>SUM、AVERAGE、COUNT、MAX、MINなど集計関数を切り替えるだけで、さまざまな集計ができる</li><li>総計行の追加、降順ソート、フィルターなどオプション引数も充実している</li><li>複数列でのグループ化はHSTACK関数と組み合わせる</li><li>PIVOTBY関数はクロス集計表、GROUPBY関数は縦方向のリスト集計と使い分ける</li></ul>



<p class="wp-block-paragraph">ピボットテーブルを作るほどでもない日常的なグループ集計は、GROUPBY関数で数式化しておくとデータ更新時も自動で再計算されて便利です。ぜひ試してみてください。</p>



<h3 class="wp-block-heading"><span id="toc19">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sumif/">SUMIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countifs/">COUNTIFS関数の使い方</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></ul>



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



<p class="wp-block-paragraph">Excel関数の一覧は下記の記事で確認できます。</p>



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



<p class="wp-block-paragraph">エラー値が表示される場合は、下記の記事も参考にしてみてください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-error-value-list/">Excelのエラー値一覧</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-groupby/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのPIVOTBY関数の使い方｜2軸クロス集計表を数式で</title>
		<link>https://mashukabu.com/excel-function-howto-use-pivotby/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-pivotby/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 04 Apr 2026 04:32:03 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel集計]]></category>
		<category><![CDATA[GROUPBY関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[PIVOTBY関数]]></category>
		<category><![CDATA[クロス集計]]></category>
		<category><![CDATA[動的配列]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5764</guid>

					<description><![CDATA[ExcelのPIVOTBY関数で行×列の2軸クロス集計表を数式ひとつで作る方法を解説。基本構文から3つの実務ユースケース、GROUPBYとの使い分け、エラー対処まで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで売上データを「部門 × 月」や「担当者 × 商品」のようにクロス集計したい場面、よくありますよね。ピボットテーブルを作るのは少し手間がかかるし、数式で組もうとするとSUMIFS関数を大量にコピーすることになります。PIVOTBY関数を使えば、たった1つの数式で2軸のクロス集計表を自動生成できます。この記事では基本の書き方から実務で使える応用例、エラー対処法まで丸ごと解説します。</p>



<p class="wp-block-paragraph">この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>「部門 × 商品」のようなクロス集計表を数式だけで作りたい</li><li>ピボットテーブルより手軽にクロス表を作成したい</li><li>PIVOTBY関数とGROUPBY関数の違いを知りたい</li></ul>




  <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">ExcelのPIVOTBY関数とは？</a></li><li><a href="#toc2" tabindex="0">PIVOTBY関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">PIVOTBY関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">ヘッダー付きで出力する</a></li></ol></li><li><a href="#toc7" tabindex="0">実践的な使い方・応用例</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><li><a href="#toc11" tabindex="0">特定条件でフィルターする</a></li></ol></li><li><a href="#toc12" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc13" tabindex="0">#NAME? エラー</a></li><li><a href="#toc14" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc15" tabindex="0">#SPILL! エラー</a></li><li><a href="#toc16" tabindex="0">#CALC! エラー</a></li></ol></li><li><a href="#toc17" tabindex="0">GROUPBYとPIVOTBYの使い分け</a></li><li><a href="#toc18" tabindex="0">まとめ</a><ol><li><a href="#toc19" tabindex="0">関連記事</a></li><li><a href="#toc20" tabindex="0">関数一覧</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">PIVOTBY（ピボットバイ）関数は、データを行と列の2軸でグループ化し、クロス集計表を自動生成する関数です。「PIVOT（軸）」+「BY（〜で指定）」で、「指定した軸で回転させる」という意味があります。</p>



<p class="wp-block-paragraph">たとえば売上データの「部門」を行、「商品」を列に配置して「金額」をSUMで合計してみましょう。部門 × 商品のクロス表が数式ひとつで完成します。結果はスピル（動的配列）で出力されます。スピルとは、数式の結果が複数セルに自動展開される機能です。データが増えても数式の修正は不要ですよ。</p>



<p class="wp-block-paragraph">PIVOTBY関数はMicrosoft 365で利用できる関数です。Excel 2021以前のバージョンでは使用できません。</p>



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



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



<pre class="wp-block-code"><code>=PIVOTBY(行フィールド, 列フィールド, 値, 集計関数, [ヘッダー], [行集計], [行の並び順], [列集計], [列の並び順], [フィルター配列], [基準])</code></pre>



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



<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>集計関数</td><td>必須</td><td>SUM、AVERAGE、COUNTなどの関数名をカッコなしで指定</td></tr><tr><td>ヘッダー</td><td>省略可</td><td>0=なし、1=あり（非表示）、2=あり（表示）、3=自動生成</td></tr><tr><td>行集計</td><td>省略可</td><td>0=なし、1=総計、2=総計＋小計。負値で上部に表示</td></tr><tr><td>行の並び順</td><td>省略可</td><td>並べ替え列を番号で指定。負値で降順</td></tr><tr><td>列集計</td><td>省略可</td><td>0=なし、1=総計、2=総計＋小計。負値で左側に表示</td></tr><tr><td>列の並び順</td><td>省略可</td><td>並べ替え列を番号で指定。負値で降順</td></tr><tr><td>フィルター配列</td><td>省略可</td><td>行を絞り込むTRUE/FALSEの配列</td></tr><tr><td>基準</td><td>省略可</td><td>PERCENTOF使用時の割合基準（0=列合計、1=行合計、2=総計）</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>必須の引数は4つです。まずは「行フィールド」「列フィールド」「値」「集計関数」の基本形をおさえましょう。</p></blockquote>



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



<p class="wp-block-paragraph">次のような売上データがA1:D13にあるとします（1行目がヘッダー）。</p>



<figure class="wp-block-table"><table><thead><tr><th>部門</th><th>商品</th><th>月</th><th>金額</th></tr></thead><tbody><tr><td>営業部</td><td>商品A</td><td>4月</td><td>50000</td></tr><tr><td>開発部</td><td>商品B</td><td>4月</td><td>30000</td></tr><tr><td>営業部</td><td>商品B</td><td>5月</td><td>45000</td></tr><tr><td>開発部</td><td>商品A</td><td>5月</td><td>25000</td></tr><tr><td>総務部</td><td>商品A</td><td>4月</td><td>15000</td></tr><tr><td>営業部</td><td>商品A</td><td>5月</td><td>60000</td></tr><tr><td>総務部</td><td>商品B</td><td>6月</td><td>20000</td></tr><tr><td>開発部</td><td>商品B</td><td>6月</td><td>35000</td></tr><tr><td>営業部</td><td>商品B</td><td>6月</td><td>40000</td></tr><tr><td>総務部</td><td>商品A</td><td>6月</td><td>18000</td></tr><tr><td>開発部</td><td>商品A</td><td>4月</td><td>32000</td></tr><tr><td>営業部</td><td>商品A</td><td>6月</td><td>55000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">部門 × 商品のクロス集計表を作るには、次のように書きます。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A13,B2:B13,D2:D13,SUM)</code></pre>



<p class="wp-block-paragraph">結果はスピルで展開され、以下のようなクロス表が自動生成されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>商品A</th><th>商品B</th></tr></thead><tbody><tr><td>営業部</td><td>165000</td><td>85000</td></tr><tr><td>開発部</td><td>57000</td><td>65000</td></tr><tr><td>総務部</td><td>33000</td><td>20000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">行フィールドにA2:A13（部門列）、列フィールドにB2:B13（商品列）を指定します。値にD2:D13（金額列）、集計関数にSUMを指定すれば完成です。部門と商品の2軸で集計されたクロス表がこれだけで出来上がります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>集計関数はSUMのほかにAVERAGE、COUNT、MAX、MINなども使えます。カッコは付けずに関数名だけを指定してください。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc6">ヘッダー付きで出力する</span></h3>



<p class="wp-block-paragraph">ヘッダー行を含めた範囲を指定し、第5引数に3を設定すると、結果にもヘッダーが付きます。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A1:A13,B1:B13,D1:D13,SUM,3)</code></pre>



<p class="wp-block-paragraph">1行目・1列目に「部門」「商品A」「商品B」のようなヘッダーが自動表示されます。報告用の表を作るときに便利ですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc8">部門 × 商品の売上クロス集計</span></h3>



<p class="wp-block-paragraph">先ほどの基本例に総計行と総計列を追加してみましょう。第6引数（行集計）と第8引数（列集計）にそれぞれ1を指定します。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A13,B2:B13,D2:D13,SUM,,1,,1)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>商品A</th><th>商品B</th><th>総計</th></tr></thead><tbody><tr><td>営業部</td><td>165000</td><td>85000</td><td>250000</td></tr><tr><td>開発部</td><td>57000</td><td>65000</td><td>122000</td></tr><tr><td>総務部</td><td>33000</td><td>20000</td><td>53000</td></tr><tr><td>総計</td><td>255000</td><td>170000</td><td>425000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">行と列の両方に総計が付くので、全体の構成がひと目で分かります。省略する引数の位置はカンマだけで飛ばしてくださいね。</p>



<h3 class="wp-block-heading"><span id="toc9">担当者 × 月の受注件数マトリクス</span></h3>



<p class="wp-block-paragraph">データの行フィールドを担当者、列フィールドを月にすれば、担当者ごと・月ごとの件数表が作れます。集計関数をCOUNTに変えるだけです。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A13,C2:C13,D2:D13,COUNT)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>4月</th><th>5月</th><th>6月</th></tr></thead><tbody><tr><td>営業部</td><td>1</td><td>2</td><td>2</td></tr><tr><td>開発部</td><td>2</td><td>1</td><td>1</td></tr><tr><td>総務部</td><td>1</td><td>0</td><td>2</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">列フィールドをC列（月）に変えただけで、まったく違うクロス表が出力されます。集計関数を切り替えれば合計・平均・件数など自在に対応できますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">カテゴリ × 四半期の売上比率表</span></h3>



<p class="wp-block-paragraph">PERCENTOF関数と組み合わせると、各セルを「全体に対する割合」で表示できます。第4引数にPERCENTOFを、第11引数（基準）に2（総計基準）を指定します。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A13,B2:B13,D2:D13,PERCENTOF,,,,,,,2)</code></pre>



<p class="wp-block-paragraph">各セルの値が「総計に対する割合」として表示されます。たとえば営業部 × 商品Aが全体の何%を占めるかがすぐに分かります。構成比の分析をしたいときに試してみてください。</p>



<h3 class="wp-block-heading"><span id="toc11">特定条件でフィルターする</span></h3>



<p class="wp-block-paragraph">第10引数にTRUE/FALSEの配列を渡すと、条件を絞ったクロス集計ができます。金額が30000以上のデータだけで集計する場合です。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A13,B2:B13,D2:D13,SUM,,,,,,(D2:D13&gt;=30000))</code></pre>



<p class="wp-block-paragraph">条件に合う行だけが集計対象になります。フィルター配列は元データと同じ行数にしてください。</p>



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



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



<p class="wp-block-paragraph">関数名のスペルミス、またはPIVOTBY関数に対応していないバージョンで発生します。PIVOTBY関数はMicrosoft 365専用です。Excel 2021以前ではこのエラーが表示されます。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: バージョンを確認してください。スペルが正しいかもあわせてチェックしましょう。</p>



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



<p class="wp-block-paragraph">行フィールド・列フィールド・値の行数が一致しない場合に発生します。ヘッダーの有無が揃っていないケースが多いです。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: 3つの範囲の行数を揃えてください。ヘッダー行を含めるなら全部含める、除くなら全部除くように統一します。</p>



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



<p class="wp-block-paragraph">スピル先のセル範囲に他のデータが入っている場合に発生します。PIVOTBY関数は行と列の両方向に展開するため、広い範囲が必要です。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: 数式を入力するセルの右下方向に十分な空きスペースを確保してください。</p>



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



<p class="wp-block-paragraph">フィルター配列で全行が除外された場合や、空の配列が渡された場合に発生します。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: フィルター条件を見直して、少なくとも1行はTRUEになるようにしてください。</p>



<h2 class="wp-block-heading"><span id="toc17">GROUPBYとPIVOTBYの使い分け</span></h2>



<p class="wp-block-paragraph">PIVOTBY関数と同時期に追加された<a href="https://mashukabu.com/excel-function-howto-use-groupby/">GROUPBY関数</a>も、データを集計する関数です。出力形式が大きく異なるので、目的に応じて使い分けましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>GROUPBY関数</th><th>PIVOTBY関数</th></tr></thead><tbody><tr><td>出力形式</td><td>縦方向のリスト</td><td>行 × 列のクロス集計表</td></tr><tr><td>グループ化の軸</td><td>行方向のみ（1軸）</td><td>行と列の2軸</td></tr><tr><td>必須引数</td><td>3つ（行・値・関数）</td><td>4つ（行・列・値・関数）</td></tr><tr><td>得意な場面</td><td>部門ごとの合計など1軸の集計</td><td>部門 × 月のクロス表</td></tr><tr><td>引数の数</td><td>8個</td><td>11個</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">判断基準はシンプルですよ。</p>



<ul class="wp-block-list"><li>「〜ごとの合計を縦に並べたい」 → GROUPBY関数</li><li>「〜ごと × 〜ごとの表を作りたい」 → PIVOTBY関数</li></ul>



<p class="wp-block-paragraph">たとえば「部門ごとの売上合計」ならGROUPBY関数で十分です。「部門 × 四半期の売上表」のように2つの軸が必要なら、PIVOTBY関数を選びましょう。</p>



<p class="wp-block-paragraph">PIVOTBYの結果を特定の列で並べ替えたい場合は、<a href="https://mashukabu.com/excel-function-howto-use-sortby/">SORTBY関数</a>も組み合わせて使えます。</p>



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



<p class="wp-block-paragraph">PIVOTBY関数は「行と列の2軸でデータをグループ化し、クロス集計表を自動生成する」関数です。</p>



<ul class="wp-block-list"><li>行フィールド・列フィールド・値・集計関数の4つを指定するだけで、クロス表が完成する</li><li>総計行・総計列の追加、ソート、フィルターなどオプション引数も充実している</li><li>PERCENTOF関数と組み合わせれば、構成比の分析もできる</li><li>1軸の縦リスト集計ならGROUPBY関数、2軸のクロス表ならPIVOTBY関数と使い分ける</li><li>Microsoft 365専用の関数なので、バージョンを確認してから使う</li></ul>



<p class="wp-block-paragraph">ピボットテーブルを作るほどでもないクロス集計は、PIVOTBY関数で数式化しておきましょう。データ更新時も自動で再計算されるので手間が省けます。ぜひ試してみてください。</p>



<h3 class="wp-block-heading"><span id="toc19">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-groupby/">GROUPBY関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sortby/">SORTBY関数の使い方</a></li></ul>



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



<p class="wp-block-paragraph">Excel関数の一覧は下記の記事で確認できます。</p>



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



<p class="wp-block-paragraph">エラー値が表示される場合は、下記の記事も参考にしてみてください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-error-value-list/">Excelのエラー値一覧</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-pivotby/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのPERCENTOF関数の使い方｜全体に対する割合をスマートに集計</title>
		<link>https://mashukabu.com/excel-function-howto-use-percentof/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-percentof/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 04 Apr 2026 04:31:54 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[GROUPBY関数]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[PERCENTOF関数]]></category>
		<category><![CDATA[PIVOTBY関数]]></category>
		<category><![CDATA[割合計算]]></category>
		<category><![CDATA[構成比]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5760</guid>

					<description><![CDATA[ExcelのPERCENTOF関数の使い方を徹底解説。構文・引数の基本からGROUPBY・PIVOTBYと組み合わせた部門別構成比、HSTACKで件数・合計・割合を並べる集計、#DIV/0!や#SPILL!エラーの対処法、SUMIFや手計算との使い分けまで実例つきで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「この部門は全体の何パーセント？」と聞かれて、電卓で割り算してからセルに打ち直していませんか。データが増えるたびに数式を作り直すのは地味にストレスですよね。Microsoft 365で使えるPERCENTOF関数なら、全体に対する割合を引数2つで自動計算できます。GROUPBYやPIVOTBYと組み合わせれば、部門別構成比やクロス集計の割合表も一発で出せるのが特徴です。この記事では基本の構文から実務での組み合わせワザ、エラーの対処法まで、コピペで試せる例つきで丸ごと紹介します。</p>



<p class="wp-block-paragraph">この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>売上データの構成比を手計算で出していて手間を減らしたい</li><li>GROUPBY関数やPIVOTBY関数と組み合わせて部門別・商品別の割合を一発で求めたい</li><li>PERCENTOF関数とSUMIF・SUMPRODUCTの使い分けが知りたい</li><li>#DIV/0!や#SPILL!エラーが出る原因と直し方を押さえたい</li></ul>




  <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">PERCENTOF関数とは？</a></li><li><a href="#toc2" tabindex="0">PERCENTOF関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li><li><a href="#toc5" tabindex="0">引数の動き方をもう少し具体的に</a></li></ol></li><li><a href="#toc6" tabindex="0">PERCENTOF関数の基本的な使い方</a><ol><li><a href="#toc7" tabindex="0">全部門の構成比を一気に求めたい場合</a></li></ol></li><li><a href="#toc8" tabindex="0">実践的な使い方・応用例</a><ol><li><a href="#toc9" tabindex="0">GROUPBYで部門別売上構成比を求める</a></li><li><a href="#toc10" tabindex="0">PIVOTBYで2軸クロス集計に割合を表示する</a></li><li><a href="#toc11" tabindex="0">HSTACKで合計と割合を同時に表示する</a></li><li><a href="#toc12" tabindex="0">累積構成比（ABC分析）を作る</a></li><li><a href="#toc13" tabindex="0">条件付きの構成比（特定カテゴリだけの割合）</a></li><li><a href="#toc14" tabindex="0">目標値に対する達成率を求める</a></li><li><a href="#toc15" tabindex="0">月次推移レポートで「前年同月比の構成比」を求める</a></li><li><a href="#toc16" tabindex="0">TEXT関数で構成比を見やすく整形する</a></li></ol></li><li><a href="#toc17" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc18" tabindex="0">#DIV/0! エラー</a></li><li><a href="#toc19" tabindex="0">#SPILL! エラー</a></li><li><a href="#toc20" tabindex="0">#NAME? エラー</a></li><li><a href="#toc21" tabindex="0">#N/A エラー（配列の長さ違い）</a></li></ol></li><li><a href="#toc22" tabindex="0">似た関数・他の方法との使い分け</a></li><li><a href="#toc23" tabindex="0">よくある質問（FAQ）</a></li><li><a href="#toc24" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">PERCENTOF（パーセントオブ）関数は、ある数値の合計が全体の合計に対して何パーセントかを返す関数です。英語の「percent of」はそのまま「〜に対する割合」という意味で、名前のとおりの仕事をしてくれます。</p>



<p class="wp-block-paragraph">たとえば「営業部の売上が全社売上の何%か」を求めたいとき、手動なら営業部の合計を全社合計で割りますよね。PERCENTOF関数はこの割り算を自動でやってくれます。戻り値は0〜1の小数値です。セルにパーセンテージ書式を適用すると「45%」のように表示されます。</p>



<p class="wp-block-paragraph">この関数の真価は単独使用ではなく、GROUPBYやPIVOTBYとの組み合わせにあります。集計関数として渡すだけで、グループごとの構成比を一括計算できるのが強みです。SUMIFS関数を使って部門ごとに数式を作り、最後にSUM全体で割って構成比を出す……という従来の手間を、関数1つにまとめられます。</p>



<p class="wp-block-paragraph">PERCENTOF関数はMicrosoft 365専用の関数です。Excel 2021・Excel 2019などの永続ライセンス版では使用できないので、配布先の環境には注意してください。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>PERCENTOFはGROUPBY・PIVOTBY関数と同じく「Excelで集計をもっとモダンにする」シリーズの一員として追加されました。集計の発想がピボットテーブルから「関数で動的に組み立てる」スタイルへ移っていくイメージです。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=PERCENTOF(データの一部, データの全体)</code></pre>



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



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>データの一部（data_subset）</td><td>必須</td><td>全体のうち、割合を求めたい部分の範囲</td></tr><tr><td>データの全体（data_all）</td><td>必須</td><td>比較の基準となる完全なデータセット</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は2つだけです。「一部 ÷ 全体」の構造なので、数式の読み方もシンプルですね。</p>



<p class="wp-block-paragraph">数学的にはSUM(データの一部)/SUM(データの全体)と同じ計算です。ただしPERCENTOF関数の本領は、GROUPBYやPIVOTBYの集計関数として使うところにあります。単独で使う場面はかなり限定的だと思っておくと、後のセクションがスッと頭に入ります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>戻り値は小数値（例: 0.45）です。「45%」と表示するにはセルの書式をパーセンテージに変更してください。Ctrl+Shift+5 のショートカットで一発切り替えできます。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc5">引数の動き方をもう少し具体的に</span></h3>



<p class="wp-block-paragraph"><code>データの一部</code>と<code>データの全体</code>は、どちらも範囲・配列・1つの数値を渡せます。両方とも数値以外の値はSUMと同じく無視されるので、ヘッダー行を巻き込んでもエラーにはなりません（ただし全体に数値がないとゼロ除算になります）。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数の例</th><th>計算される値</th></tr></thead><tbody><tr><td><code>=PERCENTOF(100, 400)</code></td><td>100 ÷ 400 = 0.25（25%）</td></tr><tr><td><code>=PERCENTOF(B2:B3, B2:B6)</code></td><td>SUM(B2:B3) ÷ SUM(B2:B6)</td></tr><tr><td><code>=PERCENTOF(B2:B6, B2:B6)</code></td><td>必ず1（100%）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「一部」と「全体」が同じ範囲なら必ず100%になるので、検算用にも使えますよ。</p>



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



<p class="wp-block-paragraph">次のような売上データがA1:B6にあるとします（1行目がヘッダー）。</p>



<figure class="wp-block-table"><table><thead><tr><th>部門</th><th>金額</th></tr></thead><tbody><tr><td>営業部</td><td>195000</td></tr><tr><td>開発部</td><td>90000</td></tr><tr><td>総務部</td><td>53000</td></tr><tr><td>人事部</td><td>42000</td></tr><tr><td>広報部</td><td>20000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">営業部の金額が全体に対して何%かを求めるには、次のように書きます。</p>



<pre class="wp-block-code"><code>=PERCENTOF(B2,B2:B6)</code></pre>



<p class="wp-block-paragraph">第1引数にB2（営業部の金額）、第2引数にB2:B6（全部門の金額）を指定しました。結果は0.4875と返ります。パーセンテージ書式を適用すると「48.8%」と表示されます。</p>



<p class="wp-block-paragraph">これはSUM(B2)/SUM(B2:B6)と同じ結果です。単独で使うなら手動の割り算でも十分ですよね。</p>



<h3 class="wp-block-heading"><span id="toc7">全部門の構成比を一気に求めたい場合</span></h3>



<p class="wp-block-paragraph">「営業部だけでなく、全部門の構成比をC2:C6に一括で並べたい」というケースは、配列を意識した書き方が便利です。スピル機能と合わせて次のように書いてみましょう。</p>



<pre class="wp-block-code"><code>=PERCENTOF(B2:B6,B2:B6)</code></pre>



<p class="wp-block-paragraph">C2に入力するとC2:C6にそれぞれの構成比がスピル展開されます……と言いたいところですが、PERCENTOFは第1引数を「一部の合計」として扱うため、すべてのセルで1（100%）が返ってしまいます。1行ずつの構成比を出したいなら、ここはBASIC的に<code>=B2/SUM($B$2:$B$6)</code>の方が素直です。</p>



<pre class="wp-block-code"><code>=B2/SUM($B$2:$B$6)</code></pre>



<p class="wp-block-paragraph">C2に入れて下方向にコピーすれば、全部門の構成比がきれいに並びます。PERCENTOF関数のうまみは次のセクションで紹介するGROUPBYやPIVOTBYと一緒に使ったときに発揮されるので、単独使用にこだわる必要はありません。</p>



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



<h3 class="wp-block-heading"><span id="toc9">GROUPBYで部門別売上構成比を求める</span></h3>



<p class="wp-block-paragraph">PERCENTOF関数の最も実用的な使い方が、<a href="https://mashukabu.com/excel-function-howto-use-groupby/">GROUPBY関数</a>の集計関数として渡すパターンです。</p>



<p class="wp-block-paragraph">次のような売上データがA1:C101にあるとします（1行目がヘッダー、100行分のデータ）。A列が「部門」、B列が「商品」、C列が「金額」です。</p>



<p class="wp-block-paragraph">部門ごとの売上構成比を求めるには、次のように書きます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A101,C2:C101,PERCENTOF)</code></pre>



<p class="wp-block-paragraph">結果はスピルで展開され、以下のような表が自動生成されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>部門</th><th>構成比</th></tr></thead><tbody><tr><td>営業部</td><td>0.46</td></tr><tr><td>開発部</td><td>0.28</td></tr><tr><td>総務部</td><td>0.15</td></tr><tr><td>人事部</td><td>0.11</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">集計関数の部分にSUMやAVERAGEの代わりにPERCENTOFを書くだけです。各部門の金額合計を全体の金額合計で割った構成比が一括で求まります。SUMIFS関数で部門ごとに数式を作って合計で割る、という手間が不要になりますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>結果のセル範囲を選択してパーセンテージ書式（Ctrl+Shift+5）を適用すると「46%」「28%」のように見やすくなります。スピル範囲全体に書式を当てる場合は、左上のセルを選んでからCtrl+Shift+Endで範囲を広げると楽です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc10">PIVOTBYで2軸クロス集計に割合を表示する</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-pivotby/">PIVOTBY関数</a>と組み合わせれば、クロス集計表の値を割合で表示できます。</p>



<p class="wp-block-paragraph">同じ売上データ（A列: 部門、B列: 商品、C列: 金額）を使って、部門 × 商品のクロス表を構成比で表示してみましょう。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A101,B2:B101,C2:C101,PERCENTOF)</code></pre>



<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>営業部</td><td>0.18</td><td>0.15</td><td>0.13</td></tr><tr><td>開発部</td><td>0.10</td><td>0.12</td><td>0.06</td></tr><tr><td>総務部</td><td>0.08</td><td>0.05</td><td>0.02</td></tr><tr><td>人事部</td><td>0.04</td><td>0.03</td><td>0.04</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">既定ではすべてのセルが「全体の総計に対する割合」を表示します。PIVOTBYの<code>percent_of</code>引数（後ろから数えて使う割合の基準）を指定すると、割合の基準を切り替えられます。</p>



<pre class="wp-block-code"><code>=PIVOTBY(A2:A101,B2:B101,C2:C101,PERCENTOF,,,,,,, 0)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>基準の値</th><th>意味</th><th>例</th></tr></thead><tbody><tr><td>0</td><td>各列の合計に対する割合</td><td>商品Aの列内での構成比</td></tr><tr><td>1</td><td>各行の合計に対する割合</td><td>営業部の行内での構成比</td></tr><tr><td>2</td><td>総計に対する割合（既定）</td><td>全体に対する構成比</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">たとえば「部門ごとに、その部門の売上を商品別に分解したい」場合は基準に1（行合計）を指定します。営業部の行がすべて合計100%になるイメージです。「商品ごとに、どの部門で売れているか」を見たい場合は基準に0（列合計）を指定すると、商品Aの列だけで100%になります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>どの基準を指定するか迷ったら「分母にしたい数字は何か？」を先に決めるとブレません。部門ごとの内訳が見たい → 行合計。商品ごとの内訳が見たい → 列合計。全社の中での位置が見たい → 総計、というように使い分けます。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc11">HSTACKで合計と割合を同時に表示する</span></h3>



<p class="wp-block-paragraph">GROUPBYの集計関数に<a href="https://mashukabu.com/excel-function-howto-use-hstack/">HSTACK関数</a>で複数の関数をまとめると、件数・合計・構成比を1つの表で並べて表示できます。</p>



<pre class="wp-block-code"><code>=GROUPBY(A2:A101,C2:C101,HSTACK(COUNT,SUM,PERCENTOF),1)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>部門</th><th>件数</th><th>合計</th><th>構成比</th></tr></thead><tbody><tr><td>営業部</td><td>35</td><td>1840000</td><td>0.46</td></tr><tr><td>開発部</td><td>28</td><td>1120000</td><td>0.28</td></tr><tr><td>総務部</td><td>22</td><td>600000</td><td>0.15</td></tr><tr><td>人事部</td><td>15</td><td>440000</td><td>0.11</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">第4引数に1を指定してヘッダーを非表示にしています。<code>HSTACK(COUNT,SUM,PERCENTOF)</code>と書くだけで3種類の集計が横に並びます。件数と合計額を確認しながら構成比も見られるので、報告資料にそのまま使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">累積構成比（ABC分析）を作る</span></h3>



<p class="wp-block-paragraph">報告資料でよく聞かれる「上位の商品で売上の何%を占めているか」というABC分析にもPERCENTOFが役立ちます。商品ごとの売上合計を構成比でランキングしたあと、SCAN関数を組み合わせて累積構成比を計算します。</p>



<pre class="wp-block-code"><code>=LET(
  result, GROUPBY(B2:B101,C2:C101,PERCENTOF,3,,-2),
  vals, INDEX(result,,2),
  累積, SCAN(0,vals,LAMBDA(a,v,a+v)),
  HSTACK(result, 累積)
)</code></pre>



<p class="wp-block-paragraph">GROUPBYで商品別の構成比を降順ソートし、SCANで上から順番に足し上げると、Aランク（累積80%まで）・Bランク（90%まで）・Cランク（残り）の判定がそのまま使えます。「定番商品を切り捨てない」「販促を集中させる」といった意思決定の根拠データに使えますね。</p>



<h3 class="wp-block-heading"><span id="toc13">条件付きの構成比（特定カテゴリだけの割合）</span></h3>



<p class="wp-block-paragraph">「東日本エリアだけに絞った構成比を出したい」というように、フィルター後の構成比を求めたい場合はFILTER関数とのネストが便利です。</p>



<pre class="wp-block-code"><code>=GROUPBY(
  FILTER(A2:A101,D2:D101=&quot;東日本&quot;),
  FILTER(C2:C101,D2:D101=&quot;東日本&quot;),
  PERCENTOF
)</code></pre>



<p class="wp-block-paragraph">D列にエリア区分が入っているとして、FILTERで東日本のレコードだけ抜き出してからGROUPBYに渡しています。これでエリアごとの構成比を「分母も含めて東日本だけ」で計算できます。</p>



<h3 class="wp-block-heading"><span id="toc14">目標値に対する達成率を求める</span></h3>



<p class="wp-block-paragraph">PERCENTOFの第2引数は「全体の合計」を指す引数ですが、ここに目標値を渡せば達成率の計算にも転用できます。たとえば部門別売上が今期の目標2,000,000円に対して何%達成しているかを見たい場合、次のように書きます。</p>



<pre class="wp-block-code"><code>=PERCENTOF(B2,2000000)</code></pre>



<p class="wp-block-paragraph">GROUPBY結果と並べて表示するなら、第2引数に絶対参照の目標値セル（例: $E$1）を渡すパターンが扱いやすいです。「全体の中の割合」だけでなく「ベンチマーク値に対する比率」も同じ関数で表現できると覚えておくと、報告資料の幅が広がります。</p>



<h3 class="wp-block-heading"><span id="toc15">月次推移レポートで「前年同月比の構成比」を求める</span></h3>



<p class="wp-block-paragraph">「今年の構成比は去年と比べてどう変わったか」を月次でモニタリングしたいときは、PERCENTOFの結果を年度ごとに並べる方法が便利です。A列に年度、B列に部門、C列に金額が入ったデータがあるとき、年度別の構成比表は次のように書けます。</p>



<pre class="wp-block-code"><code>=PIVOTBY(B2:B201,A2:A201,C2:C201,PERCENTOF,,,,,,, 0)</code></pre>



<p class="wp-block-paragraph">第10引数（割合の基準）に0を渡すと「各列（年度）の合計に対する割合」になります。同じ部門の構成比が年度ごとにどう変化したかを横並びで見られるので、「広報部の構成比が今年は2ポイント減」というような変化点をすぐ拾えます。マーケティング会議の定例レポートにそのまま貼り付けられますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">TEXT関数で構成比を見やすく整形する</span></h3>



<p class="wp-block-paragraph">GROUPBYやPIVOTBYの結果セルに直接パーセンテージ書式を当てる方法とは別に、TEXT関数で文字列として整形するパターンもあります。報告メール本文に貼り付けたい場合や、CONCAT関数で文章を組み立てたい場合に使えます。</p>



<pre class="wp-block-code"><code>=TEXT(PERCENTOF(B2,B2:B6),&quot;0.0%&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「48.8%」のような文字列として返ります。「営業部は全体の&#8221; &#038; TEXT(PERCENTOF(B2,B2:B6),&#8221;0.0%&#8221;) &#038; &#8220;を占めています」のように、説明文の中に組み込みやすいですよ。SUMIFや<a href="https://mashukabu.com/excel-function-howto-use-sum/">SUM関数</a>で集計したあとに比率を出す場面でも同じテクニックが使えます。</p>



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



<p class="wp-block-paragraph">PERCENTOF関数で発生しやすいエラーは#DIV/0!と#SPILL!の2種類です。原因と対処を整理しておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc18">#DIV/0! エラー</span></h3>



<p class="wp-block-paragraph"><strong>data_allが空またはゼロの場合</strong>: 全体の合計がゼロになるため、ゼロ除算で#DIV/0!が発生します。データ範囲が正しく指定されているか確認してください。フィルター後の空配列を渡しているケースも要注意です。</p>



<p class="wp-block-paragraph"><strong>data_allにテキスト値しか含まれない場合</strong>: PERCENTOF関数はSUMと同様に数値のみを合計します。数値が1つもないとSUMの結果がゼロになり、#DIV/0!エラーになります。対象範囲に数値列を指定しているか確認しましょう。</p>



<p class="wp-block-paragraph"><strong>IFERRORで0%に置き換える</strong>: エラーをそのまま表示したくない場合は、<code>=IFERROR(PERCENTOF(B2,B2:B6),0)</code>のようにIFERRORで包むのが定番です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>テキスト列しかないデータで「各グループの件数割合」を出したい場合は、回避策として<code>data^0</code>を使います。<code>=GROUPBY(A2:A101,B2:B101^0,PERCENTOF)</code>のように書くと、B列の全要素が1に変換されてカウントベースの割合計算になります。</p></blockquote>



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



<p class="wp-block-paragraph">GROUPBYやPIVOTBYとの組み合わせで、スピル先のセルにすでにデータが入っていると#SPILL!エラーになります。結果が展開される範囲を空けてから入力し直してください。スピル範囲の予測は、結果セルにマウスを乗せたときに表示される青枠で確認できます。</p>



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



<p class="wp-block-paragraph">数式に<code>#NAME?</code>が表示される場合は、ExcelのバージョンがMicrosoft 365でない可能性が高いです。Excel 2021以前ではPERCENTOFが未実装なので、関数名として認識されません。古い環境にファイルを渡す予定があるなら、最初から手動の割り算かSUMIFで設計したほうが安全です。</p>



<h3 class="wp-block-heading"><span id="toc21">#N/A エラー（配列の長さ違い）</span></h3>



<p class="wp-block-paragraph"><code>data_subset</code>と<code>data_all</code>が「同じ次元のデータ」であることが前提です。GROUPBY経由ではなく自分で配列計算する場合、行数が違う配列を渡すと#N/Aや#VALUE!になることがあります。FILTERで絞り込んだ範囲を渡すときは、両方の引数に同じFILTERを適用するなど、対称な書き方を心がけましょう。</p>



<h2 class="wp-block-heading"><span id="toc22">似た関数・他の方法との使い分け</span></h2>



<p class="wp-block-paragraph">PERCENTOF関数の計算自体は、手動の割り算と同じです。実務で迷わないように、関数の役割を整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>方法</th><th>書き方の例</th><th>特徴</th></tr></thead><tbody><tr><td>手動の割り算</td><td>=B2/SUM(B2:B6)</td><td>どのバージョンでも使える。行ごとに数式を書く必要がある</td></tr><tr><td>PERCENTOF単独</td><td>=PERCENTOF(B2,B2:B6)</td><td>手動割り算と同等。単独使用のメリットは少ない</td></tr><tr><td>SUMIF + SUM</td><td>=SUMIF(A:A,&#8221;営業部&#8221;,C:C)/SUM(C:C)</td><td>Excel 2019以前でも動く。部門ごとに数式を書く必要あり</td></tr><tr><td>GROUPBY + PERCENTOF</td><td>=GROUPBY(A:A,B:B,PERCENTOF)</td><td>グループごとの構成比を一括計算。数式1つで完結</td></tr><tr><td>PIVOTBY + PERCENTOF</td><td>=PIVOTBY(A:A,B:B,C:C,PERCENTOF)</td><td>2軸クロス表で構成比を表示。基準も切り替え可能</td></tr><tr><td>ピボットテーブル</td><td>「総計に対する比率」</td><td>GUI操作。データ更新には手動の「更新」が必要</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">PERCENTOF関数を単独で使うなら<code>=B2/SUM(B2:B6)</code>で十分です。わざわざ関数を使う必要はありません。PERCENTOF関数の真価は、GROUPBYやPIVOTBYの集計関数として渡すところにあります。「集計 + 割合計算」を1つの数式にまとめられるのが最大のメリットです。</p>



<p class="wp-block-paragraph">互換性が必要な場面（Excel 2019以前を含む配布物）では、<a href="https://mashukabu.com/excel-function-howto-use-sumif/">SUMIF関数</a>とSUMの組み合わせが現実解になります。ファイルを誰に渡すかで使い分けるのがおすすめです。</p>



<h2 class="wp-block-heading"><span id="toc23">よくある質問（FAQ）</span></h2>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-sumif/">faq q=&#8221;PERCENTOF関数はExcel 2021でも使えますか？&#8221; a=&#8221;使えません。Microsoft 365専用の関数で、Excel 2021・Excel 2019・Excel 2016などの永続ライセンス版では#NAME?エラーになります。互換性が必要なファイルでは[SUMIF関数</a>・SUMIFSとSUMの組み合わせを使うか、ピボットテーブルの「総計に対する比率」機能で代用してください。&#8221;]</p>



<p class="wp-block-paragraph">[faq q=&#8221;結果が「0.46」のように小数で表示されます。「46%」と表示したいです。&#8221; a=&#8221;セルの表示形式を「パーセンテージ」に切り替えてください。対象セルを選んでCtrl+Shift+5 を押すと一発で適用できます。小数点以下の桁数を増やしたい場合は、書式設定ダイアログから「46.5%」のように調整可能です。表示だけが変わり、内部の値（0.46）はそのままなので、後段の計算にも問題ありません。&#8221;]</p>



<p class="wp-block-paragraph">[faq q=&#8221;ピボットテーブルとPERCENTOFはどちらを使うべきですか？&#8221; a=&#8221;データソースが頻繁に変わる・データ範囲がテーブル機能で動的に伸びる用途なら関数ベース（GROUPBY + PERCENTOFやPIVOTBY + PERCENTOF）がおすすめです。元データを更新するだけで結果が再計算されます。一方、配布資料として一度だけ作成する・複雑なフィールド配置や階層が必要なケースではピボットテーブルが向いています。レポートを毎月使い回すなら関数派、その場限りの集計ならピボット派、と考えると整理しやすいです。&#8221;]</p>



<p class="wp-block-paragraph">[faq q=&#8221;割合の合計が100%にならないことがあります。なぜですか？&#8221; a=&#8221;表示桁数を丸めた結果、合計が99.9%や100.1%になることがあります。PERCENTOFの内部値は正確なので、書式の小数点以下を1〜2桁増やすと改善することが多いです。どうしても合計を100%ぴったりにしたい場合は、最後の行だけ「=1-SUM(直前まで)」で差分を当てる、いわゆる「最大要素にしわ寄せ法」がよく使われます。&#8221;]</p>



<p class="wp-block-paragraph">[faq q=&#8221;GROUPBYでPERCENTOFを使うと結果が降順に並びません。&#8221; a=&#8221;GROUPBY関数の第6引数（並び順）に-2を指定すると、集計値の降順で並びます。例: =GROUPBY(A2:A101,C2:C101,PERCENTOF,3,,-2)。-1はキー列の降順、2は集計値の昇順です。報告資料では「構成比が大きい順」に並ぶほうが読み手にやさしいので、-2を覚えておくと便利ですよ。&#8221;]</p>



<p class="wp-block-paragraph">[faq q=&#8221;PERCENTOFを使うとセル参照が固定されません。コピペするときの注意点はありますか？&#8221; a=&#8221;PERCENTOFを単独でセルにコピペする場合は、=PERCENTOF(B2,$B$2:$B$6)のように第2引数を絶対参照にしておくのが定石です。GROUPBY・PIVOTBYと一緒に使う場合はスピル展開されるので、参照固定を気にする必要はほぼありません。&#8221;]</p>



<p class="wp-block-paragraph">[faq q=&#8221;テーブル機能（構造化参照）と一緒に使えますか？&#8221; a=&#8221;はい、相性は良いです。元データをCtrl+T でテーブル化しておけば、=GROUPBY(売上[部門],売上[金額],PERCENTOF)のように構造化参照で書けます。行が追加されてもテーブル範囲が自動拡張されるので、参照範囲を直す手間がなくなり、月次レポートの運用がとても楽になりますよ。&#8221;]</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-countif/">faq q=&#8221;PERCENTOFと[COUNTIF関数</a>を組み合わせて構成比を出せますか？&#8221; a=&#8221;はい、可能です。たとえば部門別の件数構成比を出すなら、=COUNTIF(A:A,A2)/COUNTA(A:A)のような割り算を従来は使っていました。これをGROUPBYとPERCENTOFで書き直すなら、=GROUPBY(A2:A101,A2:A101^0,PERCENTOF)のように「キー列のべき乗で全要素を1に変換」してから集計する方法が便利です。テキスト列でも件数ベースの構成比をPERCENTOFで扱えます。&#8221;]</p>



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



<p class="wp-block-paragraph">PERCENTOF関数は「全体に対する割合」を求める関数です。構文は<code>=PERCENTOF(データの一部, データの全体)</code>で、引数は2つだけとシンプルです。</p>



<p class="wp-block-paragraph">単独使用では手動の割り算と変わりませんが、GROUPBYやPIVOTBYの集計関数として渡すことで真価を発揮します。GROUPBY + PERCENTOFで部門別構成比を一括計算でき、PIVOTBY + PERCENTOFで2軸クロス集計表に割合を表示できます。HSTACKと組み合わせれば件数・合計・構成比を横並びで表示することも可能で、SCANと組み合わせればABC分析の累積構成比も自動化できます。</p>



<p class="wp-block-paragraph">Microsoft 365専用という制約はあるものの、構成比を求める作業が多い方にはぜひ習慣化してほしい関数です。ピボットテーブルでは少し手間な「データ更新と再表示」が、関数なら入力データを直すだけで自動更新されるのが大きなアドバンテージですね。</p>



<p class="wp-block-paragraph">GROUPBY関数やPIVOTBY関数の詳しい使い方は、それぞれの解説記事もあわせて確認してみてください。集計系関数を一覧で見比べたい方は <a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧【機能別】</a> もぜひ参考にしてみてくださいね。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-groupby/">ExcelのGROUPBY関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-pivotby/">ExcelのPIVOTBY関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-hstack/">ExcelのHSTACK関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sumif/">ExcelのSUMIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countif/">ExcelのCOUNTIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sum/">ExcelのSUM関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧【機能別】</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-percentof/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
