<?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/%E6%8E%9B%E3%81%91%E7%AE%97/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 14:17:19 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>掛け算 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシート MULTIPLY関数の使い方｜*との違いも解説</title>
		<link>https://mashukabu.com/spreadsheet-multiply-function/</link>
					<comments>https://mashukabu.com/spreadsheet-multiply-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 30 Apr 2026 21:32:34 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ARRAYFORMULA]]></category>
		<category><![CDATA[MULTIPLY関数]]></category>
		<category><![CDATA[PRODUCT関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[掛け算]]></category>
		<category><![CDATA[算術演算子関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6420</guid>

					<description><![CDATA[Google スプレッドシートのMULTIPLY関数の使い方を初心者向けに解説。基本構文・引数・具体的な使用例から、掛け算演算子（*）・PRODUCT関数との違い、ARRAYFORMULAとの組み合わせ、よくあるエラーの対処法まで解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで掛け算をしたいとき、多くの人は <code>=A1<em>B1</code> のように <code></em></code> 演算子を使うはずです。実は Google スプレッドシートには、掛け算専用の <strong>MULTIPLY関数</strong> という関数も用意されています。</p>



<p class="wp-block-paragraph">「演算子で書けるのに、わざわざ関数？」と思うかもしれません。実は ARRAYFORMULA や Apps Script を使う場面では、関数として書ける方が便利なこともあるんですよ。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのMULTIPLY関数の構文・使い方を解説します。<code>*</code> 演算子との違いや PRODUCT関数との使い分け、ARRAYFORMULAとの組み合わせまで、実例つきでまとめました。</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">スプレッドシートのMULTIPLY関数とは？</a><ol><li><a href="#toc2" tabindex="0">2値の掛け算はMULTIPLY、3値以上はPRODUCT</a></li></ol></li><li><a href="#toc3" tabindex="0">MULTIPLY関数の構文と引数</a></li><li><a href="#toc4" tabindex="0">MULTIPLY関数の基本的な使い方</a><ol><li><a href="#toc5" tabindex="0">例1: 売上計算（単価×数量）</a></li><li><a href="#toc6" tabindex="0">例2: 割引率を適用する</a></li><li><a href="#toc7" tabindex="0">例3: 数値を直接入れる</a></li></ol></li><li><a href="#toc8" tabindex="0">MULTIPLY関数と掛け算演算子（*）の違い</a><ol><li><a href="#toc9" tabindex="0">演算子 vs MULTIPLY vs PRODUCT 3軸比較表</a></li><li><a href="#toc10" tabindex="0">Apps ScriptでMULTIPLYを使う理由</a></li></ol></li><li><a href="#toc11" tabindex="0">PRODUCT関数との違い</a></li><li><a href="#toc12" tabindex="0">算術演算子関数シリーズ（ADD / MINUS / MULTIPLY / DIVIDE）</a></li><li><a href="#toc13" tabindex="0">ARRAYFORMULAとの組み合わせ</a><ol><li><a href="#toc14" tabindex="0">複数行を一括で掛け算する</a></li><li><a href="#toc15" tabindex="0">空白セルを除外したいとき</a></li></ol></li><li><a href="#toc16" tabindex="0">ExcelにMULTIPLY関数はある？</a><ol><li><a href="#toc17" tabindex="0">Excelには非対応｜互換性の注意点</a></li></ol></li><li><a href="#toc18" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc19" tabindex="0">#VALUE!エラー：文字列が混入している</a></li><li><a href="#toc20" tabindex="0">#N/A エラー（ARRAYFORMULA + * 演算子 利用時）</a></li><li><a href="#toc21" tabindex="0">#NAME? エラー</a></li><li><a href="#toc22" tabindex="0">引数を3つ以上指定したときの対処</a></li></ol></li><li><a href="#toc23" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">スプレッドシートのMULTIPLY関数は、factor1 と factor2 を掛けた結果を返す <strong>乗算用の関数</strong> です。<code>=A1*B1</code> と書く代わりに <code>=MULTIPLY(A1, B1)</code> と書けます。</p>



<p class="wp-block-paragraph">MULTIPLY は英語で「掛け算する・増やす」を意味する動詞で、「マルチプライ」と読みます。</p>



<p class="wp-block-paragraph">実は MULTIPLY関数は Google スプレッドシート固有の関数で、Microsoft Excel には存在しません。「Excelからスプレッドシートに移ってきて初めて知った」という方も多いのではないでしょうか。</p>



<p class="wp-block-paragraph">スプレッドシートには MULTIPLY の仲間として、加算の ADD、減算の MINUS、除算の DIVIDE があります。これらは算術演算子関数と呼ばれ、4種類が一通り揃っています。それぞれ <code>+</code> <code>-</code> <code>*</code> <code>/</code> の演算子と同じ結果を返しますが、関数として書きたい場面で活躍しますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">2値の掛け算はMULTIPLY、3値以上はPRODUCT</span></h3>



<p class="wp-block-paragraph">MULTIPLY関数は <strong>2つの値を掛けるためだけ</strong> に作られた関数です。3つ以上の値や、セル範囲を一括で掛け算したい場合は、PRODUCT関数を使います。「2値ならMULTIPLY、範囲・3値以上ならPRODUCT」と覚えておくと迷いません。</p>



<p class="wp-block-paragraph">詳しい使い方は<a href="https://mashukabu.com/spreadsheet-product-function/">スプレッドシートのPRODUCT関数の使い方</a>をあわせてどうぞ。</p>



<h2 class="wp-block-heading"><span id="toc3">MULTIPLY関数の構文と引数</span></h2>



<p class="wp-block-paragraph">MULTIPLY関数の構文はとてもシンプルです。</p>



<pre class="wp-block-code"><code>=MULTIPLY(factor1, factor2)</code></pre>



<p class="wp-block-paragraph">引数は次の2つだけです。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須</th><th>内容</th></tr></thead><tbody><tr><td>factor1</td><td>必須</td><td>掛けられる数（被乗数）</td></tr><tr><td>factor2</td><td>必須</td><td>掛ける数（乗数）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">戻り値は <code>factor1 × factor2</code> の結果です。PRODUCT関数のように複数の値や範囲をまとめて指定することはできません。引数は2つで固定、と覚えておきましょう。</p>



<p class="wp-block-paragraph">なお、引数はスカラー値（単一の値）のみ対応で、<code>A1:A10</code> のようなセル範囲を直接渡すことはできません。範囲指定をしたい場合は PRODUCT関数の出番です。</p>



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



<p class="wp-block-paragraph">実際のサンプルで動きを見ていきましょう。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<h3 class="wp-block-heading"><span id="toc5">例1: 売上計算（単価×数量）</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>行</th><th>A: 商品</th><th>B: 単価</th><th>C: 数量</th><th>D: 売上</th></tr></thead><tbody><tr><td>2</td><td>商品X</td><td>1000</td><td>5</td><td>=MULTIPLY(B2, C2)</td></tr><tr><td>3</td><td>商品Y</td><td>2500</td><td>3</td><td>=MULTIPLY(B3, C3)</td></tr><tr><td>4</td><td>商品Z</td><td>800</td><td>12</td><td>=MULTIPLY(B4, C4)</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">D2 の結果は <code>5000</code>、D3 は <code>7500</code>、D4 は <code>9600</code> になります。<code>=B2*C2</code> と書いても同じ結果ですよ。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/02_formula_multiply-basic.png" alt="02 formula multiply basic" /></figure>



<h3 class="wp-block-heading"><span id="toc6">例2: 割引率を適用する</span></h3>



<p class="wp-block-paragraph">定価に割引率を掛けて販売価格を出すときも MULTIPLY関数が使えます。</p>



<pre class="wp-block-code"><code>=MULTIPLY(10000, 0.8)   → 8000（20%オフ）
=MULTIPLY(B2, 1-C2)     ← B2が定価、C2が割引率（例: 0.15）</code></pre>



<p class="wp-block-paragraph">割引率を 0.15 とした場合、<code>=MULTIPLY(10000, 1-0.15)</code> は <code>8500</code> になります。割引後の金額がひと目で出せて便利ですね。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_multiply-basic.png" alt="03 result multiply basic" /></figure>



<h3 class="wp-block-heading"><span id="toc7">例3: 数値を直接入れる</span></h3>



<p class="wp-block-paragraph">セル参照ではなく、直接数値を入れることもできます。</p>



<pre class="wp-block-code"><code>=MULTIPLY(8, 7)         → 56
=MULTIPLY(2.5, 4)       → 10
=MULTIPLY(100, 0.85)    → 85</code></pre>



<p class="wp-block-paragraph">小数や負の数を渡しても、もちろんそのまま計算結果が返ってきます。</p>



<h2 class="wp-block-heading"><span id="toc8">MULTIPLY関数と掛け算演算子（*）の違い</span></h2>



<p class="wp-block-paragraph">「結局、<code>*</code> 演算子で書くのと何が違うの？」という疑問はもっともです。両者を比較してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc9">演算子 vs MULTIPLY vs PRODUCT 3軸比較表</span></h3>



<p class="wp-block-paragraph">ついでに範囲版の PRODUCT関数も並べてみました。3つの違いがひと目で分かりますよ。</p>



<figure class="wp-block-table"><table><thead><tr><th>観点</th><th>演算子 <code>*</code></th><th>MULTIPLY関数</th><th>PRODUCT関数</th></tr></thead><tbody><tr><td>記述の長さ</td><td>短い（<code>=A1*B1</code>）</td><td>やや長い</td><td>やや長い</td></tr><tr><td>引数の数</td><td>何個でも連続OK</td><td>2つ固定</td><td>何個でも、範囲もOK</td></tr><tr><td>セル範囲指定</td><td>不可（個別指定）</td><td>不可（スカラー専用）</td><td>可（<code>A1:A10</code> など）</td></tr><tr><td>ARRAYFORMULA</td><td>使える</td><td>使えない（後述）</td><td>ほぼ使えない</td></tr><tr><td>Apps Script から数式生成</td><td>文字列結合がやや手間</td><td>関数呼び出しで読みやすい</td><td>関数呼び出しで読みやすい</td></tr><tr><td>Excel との互換性</td><td>互換あり</td><td>Excel 非対応</td><td>互換あり</td></tr><tr><td>一般的な使用頻度</td><td>高い</td><td>低い</td><td>中</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">普段の手入力では <code>*</code> 演算子の方が短くて速いです。MULTIPLY関数が活きるのは、Apps Script や API で数式文字列を組み立てる場面ですね。あとは「掛け算をしている」と関数名で明示したい場面にも向いています。</p>



<h3 class="wp-block-heading"><span id="toc10">Apps ScriptでMULTIPLYを使う理由</span></h3>



<p class="wp-block-paragraph">たとえば Apps Script でセルに数式を書き込む場面を考えてみましょう。<code>*</code> 演算子で組み立てると、文字列連結が少し読みにくくなります。</p>



<pre class="wp-block-code"><code>// 演算子版（文字列結合がやや煩雑）
cell.setFormula('=' + cell1 + '*' + cell2);

// MULTIPLY関数版（関数呼び出しで構造が見える）
cell.setFormula('=MULTIPLY(' + cell1 + ', ' + cell2 + ')');</code></pre>



<p class="wp-block-paragraph">引数の境目がカンマで区切られるため、後から見ても何を掛けているか分かりやすいですよね。複雑な数式生成ロジックでは、この差がコードの可読性に効いてきますよ。</p>



<h2 class="wp-block-heading"><span id="toc11">PRODUCT関数との違い</span></h2>



<p class="wp-block-paragraph">MULTIPLY関数と PRODUCT関数は、どちらも掛け算をする関数です。違いは引数の柔軟性にあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>引数の数</th><th>セル範囲</th><th>主な用途</th></tr></thead><tbody><tr><td>MULTIPLY</td><td>2つ固定</td><td>不可</td><td>2つの値を掛ける</td></tr><tr><td>PRODUCT</td><td>何個でも</td><td>可</td><td>範囲・複数値を一括で掛ける</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">イメージとしては、加算の世界に置き換えると分かりやすいです。<code>SUM</code> が加算の範囲版なら、<code>PRODUCT</code> は乗算の範囲版という関係です。SUM関数と PRODUCT関数の対応関係については、<a href="https://mashukabu.com/spreadsheet-sum-function/">スプレッドシートのSUM関数の使い方</a>もあわせて読むと理解が深まりますよ。</p>



<p class="wp-block-paragraph">範囲を一気に掛け算したい場面では迷わず PRODUCT関数を選びましょう。詳しい使い方は<a href="https://mashukabu.com/spreadsheet-product-function/">スプレッドシートのPRODUCT関数の使い方</a>で解説しています。</p>



<h2 class="wp-block-heading"><span id="toc12">算術演算子関数シリーズ（ADD / MINUS / MULTIPLY / DIVIDE）</span></h2>



<p class="wp-block-paragraph">MULTIPLY関数は、Google スプレッドシートに用意された4つの算術演算子関数のひとつです。残り3つもセットで覚えておくと便利です。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>演算子</th><th>構文</th><th>結果</th></tr></thead><tbody><tr><td>ADD</td><td><code>+</code></td><td><code>ADD(value1, value2)</code></td><td>value1 + value2</td></tr><tr><td>MINUS</td><td><code>-</code></td><td><code>MINUS(value1, value2)</code></td><td>value1 &#8211; value2</td></tr><tr><td>MULTIPLY</td><td><code>*</code></td><td><code>MULTIPLY(factor1, factor2)</code></td><td>factor1 × factor2</td></tr><tr><td>DIVIDE</td><td><code>/</code></td><td><code>DIVIDE(dividend, divisor)</code></td><td>dividend ÷ divisor</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">すべて引数は2つだけ、という共通仕様です。シンプルですよね。減算の使い方は<a href="https://mashukabu.com/spreadsheet-minus-function/">スプレッドシートのMINUS関数の使い方</a>にまとめてあるので、あわせて読んでみてください。</p>



<h2 class="wp-block-heading"><span id="toc13">ARRAYFORMULAとの組み合わせ</span></h2>



<p class="wp-block-paragraph">複数行で同じ掛け算を繰り返したいとき、ARRAYFORMULA と組み合わせると 1セルだけで全行に展開できます。</p>



<h3 class="wp-block-heading"><span id="toc14">複数行を一括で掛け算する</span></h3>



<p class="wp-block-paragraph">ただし MULTIPLY関数はスカラー値専用のため、ARRAYFORMULA で配列展開する用途には向いていません。範囲を一括で掛け算したい場合は、<code>*</code> 演算子を使う方が確実です。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(B2:B100 * C2:C100)</code></pre>



<p class="wp-block-paragraph">これで B 列と C 列の同じ行同士を掛け算した結果が、1セルから縦に展開されます。MULTIPLY を無理に使うより、こちらの方がシンプルで動作も安定していますよ。</p>



<h3 class="wp-block-heading"><span id="toc15">空白セルを除外したいとき</span></h3>



<p class="wp-block-paragraph">何も入力されていない行まで <code>0</code> と表示されると見た目が悪いですよね。IF関数と組み合わせて、空白行は何も表示しないようにしましょう。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IF(B2:B=&quot;&quot;, &quot;&quot;, B2:B * C2:C))</code></pre>



<p class="wp-block-paragraph">これで B 列が空白の行は何も表示されず、入力済みの行だけ計算結果が出るようになります。</p>



<h2 class="wp-block-heading"><span id="toc16">ExcelにMULTIPLY関数はある？</span></h2>



<p class="wp-block-paragraph">結論からいうと、<strong>Microsoft Excel には MULTIPLY という名前の関数は存在しません</strong>。</p>



<p class="wp-block-paragraph">Excel で掛け算を関数で書きたい場合、選択肢は限られます。範囲を扱える PRODUCT関数を使うか、素直に <code>*</code> 演算子を使うかの二択です。</p>



<h3 class="wp-block-heading"><span id="toc17">Excelには非対応｜互換性の注意点</span></h3>



<p class="wp-block-paragraph">Google スプレッドシートで作ったファイルを <code>.xlsx</code> 形式で書き出す予定がある場合は注意が必要です。MULTIPLY関数は Excel で開くと <code>#NAME?</code> エラーになってしまいます。</p>



<p class="wp-block-paragraph">Excel と共有する可能性のあるファイルでは、最初から <code>*</code> 演算子か PRODUCT関数で書いておく方が安全ですよ。MULTIPLY関数は「スプレッドシート専用ファイル」に向いています。Apps Script から数式を動的に生成する場面でも活躍します。</p>



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



<p class="wp-block-paragraph">MULTIPLY関数で遭遇しやすいエラーをまとめておきます。</p>



<h3 class="wp-block-heading"><span id="toc19">#VALUE!エラー：文字列が混入している</span></h3>



<p class="wp-block-paragraph">引数に数値として解釈できない文字列が入っているときに発生します。</p>



<pre class="wp-block-code"><code>=MULTIPLY(&quot;abc&quot;, 5)   → #VALUE!</code></pre>



<p class="wp-block-paragraph">エラーメッセージには次のように表示されます。</p>



<pre class="wp-block-code"><code>Function MULTIPLY parameter N expects number values.</code></pre>



<p class="wp-block-paragraph">対処法は、引数のセルが数値型になっているか確認することです。</p>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-multiply-function/05_error_value.png/">_images/spreadsheet-multiply-function/05_error_value.png</a></p>



<p class="wp-block-paragraph">文字列として保存されている数字（テキスト形式の <code>"100"</code> など）が原因のことも多いです。VALUE関数（文字列を数値に変換する関数）と組み合わせるのも有効ですよ。<code>=MULTIPLY(VALUE(A1), VALUE(B1))</code> と書けば回避できます。</p>



<h3 class="wp-block-heading"><span id="toc20">#N/A エラー（ARRAYFORMULA + * 演算子 利用時）</span></h3>



<p class="wp-block-paragraph">ARRAYFORMULA で範囲の行数が一致していないと発生します。対処法は、両方の範囲を同じ行数に揃えることです。<code>A2:A10</code> なら <code>B2:B10</code> のように揃えましょう。</p>



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



<p class="wp-block-paragraph">関数名のスペルミスが原因です。<code>MULTIPY</code> <code>MULTIPLE</code> など、よくある書き間違いに注意してください。正しいスペルは <strong>MULTIPLY</strong> です。</p>



<h3 class="wp-block-heading"><span id="toc22">引数を3つ以上指定したときの対処</span></h3>



<p class="wp-block-paragraph">MULTIPLY関数は引数が2つに固定されています。3つ以上掛けたい場合は次の方法を使います。</p>



<figure class="wp-block-table"><table><thead><tr><th>方法</th><th>書き方</th><th>コメント</th></tr></thead><tbody><tr><td>演算子で連続</td><td><code>=A1<em>B1</em>C1</code></td><td>一番シンプル</td></tr><tr><td>PRODUCT 併用</td><td><code>=PRODUCT(A1:C1)</code></td><td>範囲指定で扱える</td></tr><tr><td>MULTIPLY ネスト</td><td><code>=MULTIPLY(MULTIPLY(A1, B1), C1)</code></td><td>読みにくいので非推奨</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">実務では <code>=PRODUCT(A1:C1)</code> のパターンが扱いやすいですよ。</p>



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



<p class="wp-block-paragraph">スプレッドシートのMULTIPLY関数の使い方を解説しました。ポイントを振り返っておきましょう。</p>



<ul class="wp-block-list"><li><strong>MULTIPLY関数は <code>MULTIPLY(factor1, factor2)</code> で2つの値を掛けた結果を返す</strong></li><li><strong><code>*</code> 演算子と同じ結果を返すが、Google スプレッドシート固有の関数（Excel にはない）</strong></li><li><strong>引数は2つだけ。3つ以上掛けたいときは <code>*</code> 演算子か PRODUCT関数を使う</strong></li><li><strong>セル範囲は不可。一括計算には ARRAYFORMULA + <code>*</code> 演算子が向く</strong></li><li><strong>2値ならMULTIPLY、範囲・3値以上ならPRODUCTという使い分けが基本</strong></li><li><strong>同じ系列に ADD / MINUS / DIVIDE もある</strong></li></ul>



<p class="wp-block-paragraph">普段の手入力では <code>*</code> 演算子の方が短くて速いので、無理して MULTIPLY関数 に置き換える必要はありません。Apps Script で数式を生成する場面や、関数で明示したい場面で MULTIPLY関数 を選びましょう。この使い分けがおすすめです。</p>



<p class="wp-block-paragraph">シリーズ関数（<a href="https://mashukabu.com/spreadsheet-minus-function/">ADD / MINUS</a> / DIVIDE）や範囲版の<a href="https://mashukabu.com/spreadsheet-product-function/">PRODUCT関数</a>も、ぜひセットで使い分けてみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-multiply-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのIMPRODUCT関数の使い方｜複素数の積を一発で計算</title>
		<link>https://mashukabu.com/spreadsheet-improduct-function/</link>
					<comments>https://mashukabu.com/spreadsheet-improduct-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 29 Apr 2026 11:24:30 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[IMPRODUCT]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[掛け算]]></category>
		<category><![CDATA[複素数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6350</guid>

					<description><![CDATA[GoogleスプレッドシートのIMPRODUCT関数の使い方を解説。複素数（a+bi）同士の掛け算を一発で求める基本構文、虚数単位i/jの扱い、COMPLEX関数やIMABS・IMARGUMENTとの連携、最大255個までの複素数を一気に掛け合わせる方法、電気回路のインピーダンス合成や信号処理での活用例、ARRAYFORMULAでの一括処理、よくあるエラーと対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「スプレッドシートで複素数同士の掛け算をしたいけど、(a+bi)(c+di)を展開して i² = -1 で整理するのが面倒&#8230;」</p>



<p class="wp-block-paragraph">スプレッドシートで複素数を扱っていると、2つ以上の複素数を掛け合わせたい場面がありますよね。実部と虚部に分けて展開して、i²の置き換えを忘れずに、最後にもう一度複素数の形に組み立て直す&#8230;という手順を毎回踏むのは、ちょっと大変です。</p>



<p class="wp-block-paragraph">そんなときに頼りになるのがGoogleスプレッドシートのIMPRODUCT関数です。複素数を並べて渡すだけで、それらの積を一発で返してくれるので、インピーダンス合成やフーリエ変換の数式が一気にすっきりしますよ。</p>



<p class="wp-block-paragraph">ExcelのIMPRODUCT関数と完全互換なので、Excelファイルとやり取りする現場でも安心ですね。COMPLEX関数で作った複素数や、IMSUM・IMPOWERの演算結果からも、そのまま積を計算できます。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのIMPRODUCT関数の基本構文と実務での活用例を解説します。最大255個まで一気に掛けられる仕様や、よくあるエラーと対処法もしっかり紹介していきますよ。</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">スプレッドシートのIMPRODUCT関数とは？</a></li><li><a href="#toc2" tabindex="0">IMPRODUCT関数の書き方（構文と引数）</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">IMPRODUCT関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">文字列で複素数を直接指定する</a></li><li><a href="#toc7" tabindex="0">セル参照で複素数を指定する</a></li><li><a href="#toc8" tabindex="0">3つ以上の複素数を一気に掛ける</a></li><li><a href="#toc9" tabindex="0">COMPLEX関数と組み合わせる</a></li><li><a href="#toc10" tabindex="0">ARRAYFORMULAで複数行を一括処理する</a></li><li><a href="#toc11" tabindex="0">REDUCEで列を畳み込む</a></li></ol></li><li><a href="#toc12" tabindex="0">IMPRODUCT関数の実務活用例</a><ol><li><a href="#toc13" tabindex="0">活用例1: 共役複素数で絶対値の2乗を求める</a></li><li><a href="#toc14" tabindex="0">活用例2: 電気回路のインピーダンス合成</a></li><li><a href="#toc15" tabindex="0">活用例3: 伝達関数の段接続</a></li><li><a href="#toc16" tabindex="0">活用例4: 信号処理のフィルタ係数の合成</a></li><li><a href="#toc17" tabindex="0">活用例5: 累積積をリスト化する</a></li></ol></li><li><a href="#toc18" tabindex="0">IMPRODUCT関数とCOMPLEX関数群の関係</a></li><li><a href="#toc19" tabindex="0">IMPRODUCT関数のよくあるエラーと対処法</a><ol><li><a href="#toc20" tabindex="0">#NUM! エラー（複素数の形式エラー）</a></li><li><a href="#toc21" tabindex="0">#VALUE! エラー（虚数単位の混在）</a></li><li><a href="#toc22" tabindex="0">#VALUE! エラー（引数の型エラー）</a></li><li><a href="#toc23" tabindex="0">結果が極端な値になる</a></li><li><a href="#toc24" tabindex="0">IFERRORでまとめてエラーを吸収する</a></li></ol></li><li><a href="#toc25" tabindex="0">IMPRODUCT関数とExcelの互換性</a></li><li><a href="#toc26" tabindex="0">複素数関連の関数一覧</a></li><li><a href="#toc27" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMPRODUCT関数（イマジナリー・プロダクト関数）は、複素数同士の積（掛け算の結果）を返す関数です。エンジニアリング関数（電気・物理・工学系の計算で使う関数群）のひとつに分類されますよ。</p>



<p class="wp-block-paragraph">読み方は「イマジナリー・プロダクト」または「アイエム・プロダクト」で、英語の「imaginary number（虚数）」の「product（積）」に由来します。複素数「a+bi」と「c+di」を渡すと、(a+bi)×(c+di) を返してくれるのが役割ですね。</p>



<p class="wp-block-paragraph">そもそも複素数の積とは、実数の掛け算を複素数全体に拡張したものです。展開して i² = -1 に置き換えると、次のような形になります。</p>



<pre class="wp-block-code"><code>(a+bi)(c+di) = (ac − bd) + (ad + bc)i</code></pre>



<p class="wp-block-paragraph">実部は「ac − bd」、虚部は「ad + bc」というシンプルなルールですね。極形式で見ると、絶対値同士は掛け算、偏角（角度）同士は足し算になるという性質も持っています。</p>



<figure class="wp-block-table"><table><thead><tr><th>複素数の組み合わせ</th><th>IMPRODUCTの結果</th><th>内部計算</th></tr></thead><tbody><tr><td>(2+3i) × (1+4i)</td><td>-10+11i</td><td>2−12 と 8+3</td></tr><tr><td>(1+1i) × (1−1i)</td><td>2+0i</td><td>共役同士の積（絶対値の2乗）</td></tr><tr><td>(3+0i) × (0+2i)</td><td>0+6i</td><td>実数 × 純虚数</td></tr><tr><td>(2+0i) × (3+0i) × (4+0i)</td><td>24+0i</td><td>実数3つの積</td></tr><tr><td>(1+1i) × (1+1i) × (1+1i)</td><td>-2+2i</td><td>(1+i)³</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMPRODUCT関数を使えば、この表の右側にある「複素数の積」をサクッと取り出せます。Excelとの互換性も完璧で、Excel 2007以降のすべてのバージョンに対応していますよ。</p>



<p class="wp-block-paragraph">複素数の積は、電気工学のインピーダンス合成・信号処理の伝達関数の連結・量子力学の状態ベクトルの内積など、複素数演算が必要な場面で活躍する基礎パーツですね。</p>



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



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



<pre class="wp-block-code"><code>=IMPRODUCT(複素数1, [複素数2, ...])</code></pre>



<p class="wp-block-paragraph">引数は最低1つ必要で、最大255個まで指定できます。</p>



<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>複素数1（inumber1）</td><td>必須</td><td>積を求めたい1つ目の複素数。文字列またはセル参照で指定する</td></tr><tr><td>複素数2以降（inumber2, &#8230;）</td><td>任意</td><td>2つ目以降の複素数。最大255個まで指定可能</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数には「&#8221;2+3i&#8221;」や「&#8221;2+3j&#8221;」のような複素数文字列を直接渡せます。COMPLEX関数（実数と虚数から複素数を作成する関数）の結果や、複素数が入ったセルの参照、セル範囲も指定できますよ。</p>



<p class="wp-block-paragraph">虚数単位は小文字の「i」または「j」のどちらでも受け付けます。数学では「i」、電気工学では「j」が使われる慣習ですね。IMPRODUCT関数はどちらでも同じように動作してくれます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>戻り値は「i」と「j」の混在を許しません。引数に「i」と「j」が混ざっていると #VALUE! エラーになるので、計算前に表記を揃えておきましょう。</p></blockquote>



<p class="wp-block-paragraph">引数1つだけを渡した場合は、その複素数自身が返ります。実部だけの数（虚部0）を渡すと、通常の掛け算と同じ結果になりますよ。</p>



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



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<h3 class="wp-block-heading"><span id="toc6">文字列で複素数を直接指定する</span></h3>



<p class="wp-block-paragraph">複素数文字列をそのまま引数に渡してみましょう。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;2+3i&quot;, &quot;1+4i&quot;)</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/02_formula_improduct-basic.png" alt="02 formula improduct basic" /></figure>



<p class="wp-block-paragraph">結果は「-10+11i」になります。手計算で確認すると (2+3i)(1+4i) = 2+8i+3i+12i² = 2+11i-12 = -10+11i なので、計算が合っていますね。</p>



<p class="wp-block-paragraph">実部だけの複素数（虚部0）を渡すと、通常の掛け算と同じ結果になります。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;3+0i&quot;, &quot;4+0i&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「12」です。3 × 4 = 12 という基本的な値が返ってきますね。</p>



<p class="wp-block-paragraph">共役複素数同士を掛けると、絶対値の2乗が実数で得られます。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;3+4i&quot;, &quot;3-4i&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「25」になります。これは |3+4i|² = 3²+4² = 25 と一致しますね。共役複素数の積は、複素数の大きさを求めるときの定番パターンです。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_improduct-conjugate.png" alt="03 result improduct conjugate" /></figure>



<h3 class="wp-block-heading"><span id="toc7">セル参照で複素数を指定する</span></h3>



<p class="wp-block-paragraph">実務ではセルに入った複素数を扱う場面が多いですよね。A2に「1+2i」、B2に「3+4i」が入っている場合は次のように書きます。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(A2, B2)</code></pre>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-improduct-function/04_formula_improduct-cellref.png/">_images/spreadsheet-improduct-function/04_formula_improduct-cellref.png</a></p>



<p class="wp-block-paragraph">結果は「-5+10i」になります。セル参照を渡すだけで、入っている複素数の積を取り出せますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">3つ以上の複素数を一気に掛ける</span></h3>



<p class="wp-block-paragraph">IMPRODUCT関数は最大255個まで複素数を受け付けます。3つ以上をまとめて掛けたいときは、カンマ区切りで並べていきましょう。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;1+1i&quot;, &quot;1+1i&quot;, &quot;1+1i&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「-2+2i」になります。(1+i)³ を1セルで一気に計算できますね。同じ複素数を何度も掛けるならIMPOWER関数の方が読みやすいですが、それぞれ異なる複素数を掛けるならIMPRODUCTが便利です。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(A2, B2, C2, D2)</code></pre>



<p class="wp-block-paragraph">A2〜D2に4つの複素数が入っていれば、それらの積が一発で求まります。インピーダンスの段接続のように、複数の素子を順番に掛けていく計算で重宝しますよ。</p>



<h3 class="wp-block-heading"><span id="toc9">COMPLEX関数と組み合わせる</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX関数</a>で作った複素数の積を、その場で計算することもできます。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(COMPLEX(2, 3), COMPLEX(1, 4))</code></pre>



<p class="wp-block-paragraph">結果は「-10+11i」、つまり「IMPRODUCT(&#8220;2+3i&#8221;, &#8220;1+4i&#8221;)」と同じですね。COMPLEX(2, 3)が内部で「2+3i」を作り、IMPRODUCT関数がその積を返してくれます。</p>



<p class="wp-block-paragraph">実部と虚部がセルに分かれているデータを扱うときに便利な書き方ですよ。</p>



<h3 class="wp-block-heading"><span id="toc10">ARRAYFORMULAで複数行を一括処理する</span></h3>



<p class="wp-block-paragraph">複素数のリストから一気に積の列を作りたい場面もありますよね。そんなときはARRAYFORMULA関数（数式を範囲全体に展開する関数）と組み合わせます。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IMPRODUCT(A2:A10, B2:B10))</code></pre>



<p class="wp-block-paragraph">A列とB列の同じ行同士の積を、対応する行ごとに一発で計算できますよ。フーリエ変換の係数同士を掛け合わせるときに重宝しますね。</p>



<p class="wp-block-paragraph">ただしARRAYFORMULA + IMPRODUCT で「列全体を1つの積にまとめる」ことはできません。範囲をすべて掛け合わせたい場合は、後述のREDUCEを使う方法が便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc11">REDUCEで列を畳み込む</span></h3>



<p class="wp-block-paragraph">A2:A10 に並んだ複素数すべての積をまとめて求めたいときは、REDUCE関数（範囲を順に畳み込む関数）と組み合わせます。</p>



<pre class="wp-block-code"><code>=REDUCE(&quot;1+0i&quot;, A2:A10, LAMBDA(acc, x, IMPRODUCT(acc, x)))</code></pre>



<p class="wp-block-paragraph">初期値の「1+0i」から始めて、A2:A10 の複素数を順番に掛けていく書き方ですね。可変長のリストに対しても、一発で総積を計算できますよ。</p>



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



<h3 class="wp-block-heading"><span id="toc13">活用例1: 共役複素数で絶対値の2乗を求める</span></h3>



<p class="wp-block-paragraph">複素数 z=a+bi の絶対値の2乗は、共役複素数 z*=a-bi との積として求められます。IMPRODUCT関数とIMCONJUGATE関数（共役複素数を返す関数）を組み合わせれば、シート上で素直に計算できますよ。</p>



<p class="wp-block-paragraph">A2に「3+4i」が入っているとします。</p>



<pre class="wp-block-code"><code>B2: =IMCONJUGATE(A2)         ← 共役 3-4i
C2: =IMPRODUCT(A2, B2)       ← |z|² = 25</code></pre>



<p class="wp-block-paragraph">C2の結果は実数の「25」になりますね。IMABS関数（絶対値）で求めた値の2乗と一致するので、検算用としても便利です。</p>



<h3 class="wp-block-heading"><span id="toc14">活用例2: 電気回路のインピーダンス合成</span></h3>



<p class="wp-block-paragraph">交流回路のインピーダンスは複素数で表され、直列接続されたインピーダンスを伝達特性として掛け合わせるときに、複素数の積が登場します。IMPRODUCT関数を使えば、Excelシートに直接落とし込めますよ。</p>



<p class="wp-block-paragraph">抵抗成分のZ1=10+5j、リアクタンス成分のZ2=2+8j を組み合わせるなら、こう書きます。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(10, 5, &quot;j&quot;)       ← Z1 = 10+5j
A3: =COMPLEX(2, 8, &quot;j&quot;)        ← Z2 = 2+8j
A4: =IMPRODUCT(A2, A3)         ← Z1 × Z2 = -20+90j
A5: =IMABS(A4)                 ← |Z1 × Z2|</code></pre>



<p class="wp-block-paragraph">電気工学の慣習に合わせて虚数単位を「j」にしたい場合は、COMPLEX関数の第3引数で指定できますね。</p>



<h3 class="wp-block-heading"><span id="toc15">活用例3: 伝達関数の段接続</span></h3>



<p class="wp-block-paragraph">制御工学では、複数の伝達関数 G1(s)、G2(s)、G3(s) を直列に接続したシステムの全体特性を、それぞれの値の積として計算します。特定の周波数 s=jω での値が複素数になるので、IMPRODUCT関数で一発に組み合わせられますよ。</p>



<p class="wp-block-paragraph">ある周波数ωでの値がそれぞれ G1=1+2j、G2=0.5+0.5j、G3=2+1j のとき、こう書きます。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(1, 2, &quot;j&quot;)            ← G1
A3: =COMPLEX(0.5, 0.5, &quot;j&quot;)        ← G2
A4: =COMPLEX(2, 1, &quot;j&quot;)            ← G3
A5: =IMPRODUCT(A2, A3, A4)         ← G1 × G2 × G3
A6: =IMABS(A5)                     ← ゲイン
A7: =IMARGUMENT(A5)                ← 位相</code></pre>



<p class="wp-block-paragraph">A5の結果がシステム全体の応答ですね。ゲインと位相を一緒に出しておけば、ボード線図の作成にもそのまま使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">活用例4: 信号処理のフィルタ係数の合成</span></h3>



<p class="wp-block-paragraph">複数のフィルタを直列につないだときの特性は、各フィルタの周波数応答の積で表されます。離散時間系では z=e^(jω) を代入して計算するので、IMPRODUCT関数とCOMPLEX関数の組み合わせが活きてきますね。</p>



<p class="wp-block-paragraph">ある周波数ωで、フィルタ1の応答が「0.8+0.3j」、フィルタ2の応答が「1.2-0.4j」のとき、こう書きます。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(0.8, 0.3, &quot;j&quot;)        ← H1(e^jω)
A3: =COMPLEX(1.2, -0.4, &quot;j&quot;)       ← H2(e^jω)
A4: =IMPRODUCT(A2, A3)             ← H1 × H2 = 1.08+0.04j</code></pre>



<p class="wp-block-paragraph">A4が合成後の周波数応答ですね。学習用のシミュレーションシートとして使えるパターンです。</p>



<h3 class="wp-block-heading"><span id="toc17">活用例5: 累積積をリスト化する</span></h3>



<p class="wp-block-paragraph">時間ステップごとに複素数の係数を順次掛け合わせていく計算では、累積積を1列に展開すると便利です。直前のセルとの積を取る形で、漸化式のように書けますよ。</p>



<p class="wp-block-paragraph">A列に係数、B列に累積積を出すなら、こう書きます。</p>



<pre class="wp-block-code"><code>A2: 1+0i
A3: 0.9+0.1i
A4: 0.8+0.2i
A5: 0.7+0.3i

B2: =A2                       ← 初期値
B3: =IMPRODUCT(B2, A3)        ← 累積積
B4: =IMPRODUCT(B3, A4)
B5: =IMPRODUCT(B4, A5)</code></pre>



<p class="wp-block-paragraph">下にコピーすれば、累積積の列が完成しますね。物理シミュレーションや確率計算のチェイン処理で重宝するパターンですよ。</p>



<h2 class="wp-block-heading"><span id="toc18">IMPRODUCT関数とCOMPLEX関数群の関係</span></h2>



<p class="wp-block-paragraph">複素数を扱う関数群の中で、IMPRODUCT関数の位置づけを整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>入力</th><th>出力</th><th>役割</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX</a></td><td>実数 a, b</td><td>複素数 a+bi</td><td>複素数を作る</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数 a+bi</td><td>実数 a</td><td>実部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数 a+bi</td><td>実数 b</td><td>虚部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数 a+bi</td><td>実数 √(a²+b²)</td><td>大きさを取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数 a+bi</td><td>実数 atan2(b,a)</td><td>偏角を取り出す</td></tr><tr><td>IMSUM</td><td>複素数 z1, z2, &#8230;</td><td>複素数 z1+z2+&#8230;</td><td>和を計算する</td></tr><tr><td>IMSUB</td><td>複素数 z1, z2</td><td>複素数 z1-z2</td><td>差を計算する</td></tr><tr><td>IMPRODUCT</td><td>複素数 z1, z2, &#8230;</td><td>複素数 z1×z2×&#8230;</td><td>積を計算する</td></tr><tr><td>IMDIV</td><td>複素数 z1, z2</td><td>複素数 z1/z2</td><td>商を計算する</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-impower-function/">IMPOWER</a></td><td>複素数 z, 指数 n</td><td>複素数 z^n</td><td>べき乗を計算する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMPRODUCTは「複数の複素数から1つの複素数を計算する」役割です。出力もそのまま複素数なので、IMSUMやIMPOWERにそのまま渡してさらに計算を続けられますよ。</p>



<p class="wp-block-paragraph">たとえば同じ複素数を3回掛けたい場合、IMPOWERの方が読みやすくなります。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;2+3i&quot;, &quot;2+3i&quot;, &quot;2+3i&quot;)
=IMPOWER(&quot;2+3i&quot;, 3)</code></pre>



<p class="wp-block-paragraph">どちらも結果は「-46+9i」で同じですね。ただし異なる複素数を順次掛けたいなら、IMPRODUCTの出番です。役割で使い分けるとシートが読みやすくなりますよ。</p>



<p class="wp-block-paragraph">割り算がしたい場合は、IMDIV関数を使うと意図が明確になります。「IMPRODUCT(z1, IMPOWER(z2, -1))」とも書けますが、IMDIV(z1, z2) の方がストレートですね。</p>



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



<h3 class="wp-block-heading"><span id="toc20">#NUM! エラー（複素数の形式エラー）</span></h3>



<p class="wp-block-paragraph">複素数として認識できない文字列を渡したときに発生します。虚数単位が大文字になっていたり、i・j以外の文字を使っている場合が典型例ですよ。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;1+1I&quot;, &quot;1+1i&quot;)   → #NUM!（大文字のIは不可）
=IMPRODUCT(&quot;1+1k&quot;, &quot;1+1i&quot;)   → #NUM!（i・j以外は不可）
=IMPRODUCT(&quot;１+１i&quot;, &quot;1+1i&quot;) → #NUM!（全角文字は不可）</code></pre>



<p class="wp-block-paragraph">対処法は、複素数文字列を必ず半角の「a+bi」または「a+bj」の形式にすることです。虚数単位は小文字限定なので、CapsLockがオンになっていないか確認してくださいね。</p>



<p class="wp-block-paragraph">スペースが入っている場合（例: <code>"1 + 1i"</code>）も認識できないことがあるので、余計な空白を除いておくと安心です。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_error_num-value.png" alt="05 error num value" /></figure>



<h3 class="wp-block-heading"><span id="toc21">#VALUE! エラー（虚数単位の混在）</span></h3>



<p class="wp-block-paragraph">引数に「i」と「j」が混ざっていると #VALUE! エラーになります。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;1+1i&quot;, &quot;1+1j&quot;)   → #VALUE!（iとjの混在は不可）</code></pre>



<p class="wp-block-paragraph">対処法は、虚数単位をすべて「i」かすべて「j」のどちらかに統一することです。シート全体でルールを決めておくと、こうしたミスを防げますよ。COMPLEX関数で複素数を作るときは、第3引数で単位を統一できるので便利ですね。</p>



<h3 class="wp-block-heading"><span id="toc22">#VALUE! エラー（引数の型エラー）</span></h3>



<p class="wp-block-paragraph">論理値やエラー値を渡したときにも #VALUE! エラーが発生します。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(&quot;1+1i&quot;, TRUE)   → #VALUE!（論理値は不可）
=IMPRODUCT(&quot;1+1i&quot;, #N/A)   → #N/A（エラー値はそのまま伝播）</code></pre>



<p class="wp-block-paragraph">対処法は、すべての引数を複素数文字列か数値で統一することです。実数を渡すと「a+0i」として扱われるので、数値そのものは問題なく受け付けてくれますよ。</p>



<h3 class="wp-block-heading"><span id="toc23">結果が極端な値になる</span></h3>



<p class="wp-block-paragraph">たくさんの複素数を掛け合わせると、絶対値が指数的に増えてオーバーフローしたり、数値誤差が積み上がったりします。</p>



<pre class="wp-block-code"><code>=IMPRODUCT(A2:A100)   → 100個の積で誤差が膨らむケース</code></pre>



<p class="wp-block-paragraph">対処法は、必要に応じて対数領域で計算する、あるいは中間結果を正規化することです。フィルタの直列接続なら各段でゲインを揃える、伝達関数の解析なら局所的にスケーリングする、といった工夫が必要ですね。</p>



<h3 class="wp-block-heading"><span id="toc24">IFERRORでまとめてエラーを吸収する</span></h3>



<p class="wp-block-paragraph">入力データの信頼性が低い場合は、IFERROR関数（エラー時に代替値を返す関数）で包んでおくとシート全体の集計が止まりません。</p>



<pre class="wp-block-code"><code>=IFERROR(IMPRODUCT(A2, B2), &quot;形式エラー&quot;)</code></pre>



<p class="wp-block-paragraph">エラー時にメッセージを返すようにしておけば、安心して大量データに適用できますよ。</p>



<h2 class="wp-block-heading"><span id="toc25">IMPRODUCT関数とExcelの互換性</span></h2>



<p class="wp-block-paragraph">GoogleスプレッドシートのIMPRODUCT関数は、ExcelのIMPRODUCT関数と仕様が完全に一致しています。構文・引数・戻り値の形式・エラー条件まで同じですよ。</p>



<p class="wp-block-paragraph">ExcelファイルをGoogleスプレッドシートで開いてもIMPRODUCT関数はそのまま動作します。逆にスプレッドシートで作った数式をExcelで開いても問題ありませんね。</p>



<p class="wp-block-paragraph">ExcelのIMPRODUCT関数は、Excel 2007以降のすべてのバージョンで利用できます。Microsoft 365、Excel for Mac、Excel Online でも同じように使えますよ。古い環境とファイルを共有する場合でも、安心して使える関数ですね。</p>



<h2 class="wp-block-heading"><span id="toc26">複素数関連の関数一覧</span></h2>



<p class="wp-block-paragraph">IMPRODUCT関数と一緒に使うことが多い、複素数関連の関数をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>機能</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX</a></td><td>実数と虚数から複素数を作成する</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数の実数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数の虚数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数の絶対値（大きさ）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数の偏角（角度）をラジアンで返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imconjugate-function/">IMCONJUGATE</a></td><td>共役複素数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-impower-function/">IMPOWER</a></td><td>複素数のべき乗を返す</td></tr><tr><td>IMSQRT</td><td>複素数の平方根を返す</td></tr><tr><td>IMSUM</td><td>複素数の合計（足し算）を返す</td></tr><tr><td>IMSUB</td><td>複素数の差（引き算）を返す</td></tr><tr><td>IMPRODUCT</td><td>複素数の積（掛け算）を返す</td></tr><tr><td>IMDIV</td><td>複素数の商（割り算）を返す</td></tr><tr><td>IMEXP</td><td>複素数の指数関数を返す</td></tr><tr><td>IMLN</td><td>複素数の自然対数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imcos-function/">IMCOS</a></td><td>複素数のコサインを返す</td></tr><tr><td>IMSIN</td><td>複素数のサインを返す</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMPRODUCT関数は、これら複素数関数群の中で「積を計算する」役割を担います。COMPLEXで作り、IMPRODUCTで積を取り、IMABS・IMARGUMENTで絶対値と偏角を確認するのが基本パターンですね。</p>



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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMPRODUCT関数は、複素数同士の積を返す関数です。電気工学のインピーダンス合成、信号処理のフィルタ連結、制御工学の伝達関数の段接続など、複素数の掛け算が必要な場面で欠かせない関数ですよ。</p>



<ul class="wp-block-list"><li>構文は <code>=IMPRODUCT(複素数1, [複素数2, ...])</code> で最低1つ、最大255個まで指定可能</li><li>「a+bi」と「c+di」を渡すと、(a+bi)×(c+di) の結果が返る</li><li>「a+bj」のような工学系表記もそのまま受け付ける</li><li>共役複素数同士の積で、絶対値の2乗を実数として求められる</li><li>3つ以上の複素数も一気に掛け合わせられる</li><li>COMPLEX関数の結果やセル参照、複素数演算の結果から積を計算できる</li><li>IMABS・IMARGUMENTと組み合わせて結果を検算できる</li><li>同じ複素数の繰り返し掛け算ならIMPOWER、割り算ならIMDIVと使い分ける</li><li>ARRAYFORMULAで複数行を一括処理できる</li><li>REDUCEと組み合わせれば、可変長リストの総積も計算できる</li><li>大文字の「I」「J」や全角文字、i・j以外の単位は #NUM! エラー</li><li>「i」と「j」の混在は #VALUE! エラー</li><li>論理値や非数値を引数に渡すと #VALUE! エラー</li><li>ExcelのIMPRODUCT関数と完全互換（Excel 2007以降）</li></ul>



<p class="wp-block-paragraph">複素数の積が必要になったら、IMPRODUCT関数の出番ですよ。COMPLEX関数で複素数を作り、IMPRODUCTで積を取り、IMABS・IMARGUMENTで絶対値と偏角を検算する流れで、エンジニアリング系のシートを軽快に組み立ててみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-improduct-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのPRODUCT関数で掛け算をまとめる｜割引率一括・複利計算・単位変換の実務4パターン</title>
		<link>https://mashukabu.com/spreadsheet-product-function/</link>
					<comments>https://mashukabu.com/spreadsheet-product-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 18 Mar 2026 12:28:50 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[PRODUCT]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[掛け算]]></category>
		<category><![CDATA[積]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4028</guid>

					<description><![CDATA[GoogleスプレッドシートのPRODUCT関数の使い方を初心者向けに解説。掛け算を一括計算する基本構文から、割引率の一括適用・複利計算などの実務活用パターン、よくあるエラーの対処法、SUM・SUMPRODUCTとの違いまで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「セル10個の掛け算を <code>*</code> でつないだら、式が長すぎて画面から見切れた…」そんな経験、ありませんか？</p>



<p class="wp-block-paragraph">セルが3個くらいなら <code>=A1<em>A2</em>A3</code> でも十分です。でも10個、20個と増えると、式がどんどん長くなります。途中でセルを1つ飛ばしてもミスに気づきにくいですよね。さらに空白セルが混ざると、<code>*</code> 演算子では結果が0になってしまうトラブルも起きがちです。</p>



<p class="wp-block-paragraph">そんなときに使えるのが、スプレッドシートのPRODUCT関数です。セル範囲を指定するだけで、掛け算をまとめて計算できますよ。</p>



<p class="wp-block-paragraph">この記事では、PRODUCT関数の基本的な使い方から実務でよく使うパターンまで解説します。割引率の一括適用・複利計算・単位変換などを具体例で紹介しますよ。SUM・SUMPRODUCT・POWERとの違いも比較しますので、似た関数との使い分けに迷っている方もぜひ参考にしてください。</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">スプレッドシートのPRODUCT関数とは？</a></li><li><a href="#toc2" tabindex="0">PRODUCT関数の書き方（構文と引数）</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">PRODUCT関数の基本的な使い方</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><li><a href="#toc10" tabindex="0">空白セルがある場合の動作</a></li></ol></li><li><a href="#toc11" tabindex="0">PRODUCT関数の実務活用パターン</a><ol><li><a href="#toc12" tabindex="0">パターン1: 複数の割引率（掛け率）をまとめて掛ける</a></li><li><a href="#toc13" tabindex="0">パターン2: 複利計算（成長倍率の連続適用）</a></li><li><a href="#toc14" tabindex="0">パターン3: 単位変換の一括計算</a></li><li><a href="#toc15" tabindex="0">パターン4: 独立事象の確率を掛け合わせる</a></li></ol></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc17" tabindex="0">0が含まれると結果が0になる</a></li><li><a href="#toc18" tabindex="0">文字列が混在する場合</a></li></ol></li><li><a href="#toc19" tabindex="0">似た関数との違い・使い分け</a><ol><li><a href="#toc20" tabindex="0">SUM関数との対比</a></li><li><a href="#toc21" tabindex="0">SUMPRODUCT関数との違い</a></li><li><a href="#toc22" tabindex="0">Excelとの違い</a></li></ol></li><li><a href="#toc23" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">スプレッドシートのPRODUCT関数（読み方: プロダクト関数）は、<strong>指定した数値やセル範囲をすべて掛け算する関数</strong>です。引数として渡したすべての数値の積を返します。</p>



<p class="wp-block-paragraph">「PRODUCT」は英語で「積」を意味します。文字どおり「掛け算の結果」を求める関数ですね。数学関数のカテゴリに分類されています。</p>



<p class="wp-block-paragraph">たとえばA1からA5に数値が入っているとします。<code><em></code> 演算子を使うと <code>=A1</em>A2<em>A3</em>A4*A5</code> と書く必要がありますよね。PRODUCT関数なら <code>=PRODUCT(A1:A5)</code> だけで同じ結果が得られます。</p>



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



<ul class="wp-block-list"><li>指定したセル範囲の数値をすべて掛け算する</li><li>複数の離れたセル範囲をまとめて1つの式で計算する</li><li>空白セルや文字列を自動的にスキップする</li><li>数値を直接引数に渡して計算する</li><li>配列定数 <code>{2,3,5}</code> のような形式も受け付ける</li></ul>



<p class="wp-block-paragraph">「数値を全部掛けてね」とスプレッドシートにお願いする関数です。<a href="https://mashukabu.com/spreadsheet-sum-function/">SUM関数</a>が「全部足す」なら、PRODUCT関数は「全部掛ける」というイメージですね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>PRODUCT関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心ですよ。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=PRODUCT(数値1, [数値2], ...)</code></pre>



<p class="wp-block-paragraph">カッコの中に、掛け算したい数値やセル範囲を指定します。</p>



<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>数値1</td><td>必須</td><td>掛け算する最初の数値またはセル範囲</td></tr><tr><td>数値2, &#8230;</td><td>任意</td><td>追加の数値またはセル範囲（最大255個）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数にはセル範囲（A1:A10）、個別のセル（A1, B1, C1）、直接数値（10, 1.08）を指定できます。引数が1つだけの場合は、その範囲内のすべての数値を掛け算しますよ。</p>



<h3 class="wp-block-heading"><span id="toc5">引数として渡せるデータの扱い</span></h3>



<p class="wp-block-paragraph">PRODUCT関数は、引数に渡したデータの型によって挙動が変わります。最初に整理しておくと混乱が減りますよ。</p>



<figure class="wp-block-table"><table><thead><tr><th>データ型</th><th>扱い</th></tr></thead><tbody><tr><td>数値</td><td>乗算対象</td></tr><tr><td>数値が入ったセル参照</td><td>乗算対象</td></tr><tr><td>空白セル</td><td>スキップ（無視）</td></tr><tr><td>文字列が入ったセル</td><td>スキップ（無視）</td></tr><tr><td>0が入ったセル</td><td>0として乗算（結果が0になる）</td></tr><tr><td>直接渡した非数値文字列</td><td><code>#VALUE!</code> エラー</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「空白セル」と「0が入ったセル」の扱いが違うのが最大のポイントです。後ほど詳しく解説しますね。</p>



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



<p class="wp-block-paragraph">ここでは実際にPRODUCT関数を使って、基本的な計算パターンを確認しましょう。</p>



<h3 class="wp-block-heading"><span id="toc7">セル範囲をまとめて掛け算する</span></h3>



<p class="wp-block-paragraph">A1からA4に「2, 3, 5, 4」と入力されているとします。</p>



<pre class="wp-block-code"><code>=PRODUCT(A1:A4)</code></pre>



<p class="wp-block-paragraph">結果は <strong>120</strong> です。2 × 3 × 5 × 4 = 120 をまとめて計算してくれます。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/01_result_product-basic.png" alt="01 result product basic" /></figure>



<p class="wp-block-paragraph"><code><em></code> 演算子で書くと <code>=A1</em>A2<em>A3</em>A4</code> です。4個ならまだ許容範囲ですが、10個以上になるとPRODUCT関数のほうが断然ラクですよ。</p>



<h3 class="wp-block-heading"><span id="toc8">複数の範囲や数値を組み合わせる</span></h3>



<p class="wp-block-paragraph">範囲と直接数値を混ぜて指定することもできます。</p>



<pre class="wp-block-code"><code>=PRODUCT(A1:A3, 10)</code></pre>



<p class="wp-block-paragraph">A1:A3の積にさらに10を掛けた結果が返ります。A1:A3が「2, 3, 5」なら、2 × 3 × 5 × 10 = 300 です。</p>



<p class="wp-block-paragraph">「セル範囲の積に消費税率1.10を掛ける」といった用途で便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc9">離れたセルを個別に指定する</span></h3>



<p class="wp-block-paragraph">範囲が連続していない場合はセルをコンマで区切ります。</p>



<pre class="wp-block-code"><code>=PRODUCT(A1, C1, E1)</code></pre>



<p class="wp-block-paragraph">A1、C1、E1の3つの値を掛け算します。間にあるB1やD1は計算に含まれません。間にラベル列が挟まっている表でも、必要な数値セルだけをピンポイントで指定できますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">空白セルがある場合の動作</span></h3>



<p class="wp-block-paragraph">PRODUCT関数と <code>*</code> 演算子の大きな違いが、空白セルの扱いです。</p>



<p class="wp-block-paragraph">A1:A5に「3, (空白), 5, (空白), 2」と入っているとします。</p>



<pre class="wp-block-code"><code>=PRODUCT(A1:A5)</code></pre>



<p class="wp-block-paragraph">PRODUCT関数は空白セルを無視します。結果は 3 × 5 × 2 = <strong>30</strong> です。</p>



<p class="wp-block-paragraph">一方、<code><em></code> 演算子で <code>=A1</em>A2<em>A3</em>A4*A5</code> と書くと空白が0扱いになります。結果は <strong>0</strong> ですね。入力途中の表ではこの違いが大きいですよ。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/02_result_blank-cells.png" alt="02 result blank cells" /></figure>



<p class="wp-block-paragraph">「データ入力がまだ途中で、一部のセルが空欄」という場面でも、PRODUCT関数なら入力済みの値だけで計算してくれます。集計用の表ではPRODUCT関数のほうが安全ですね。</p>



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



<p class="wp-block-paragraph">基本がわかったところで、仕事でよく使うパターンを見てみましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン1: 複数の割引率（掛け率）をまとめて掛ける</span></h3>



<p class="wp-block-paragraph">見積書や請求書で「定価に複数の掛け率を適用する」場面です。</p>



<p class="wp-block-paragraph">B2に定価10,000、C2に仕切率0.7、D2に特別値引0.95、E2に消費税率1.10が入っているとします。</p>



<pre class="wp-block-code"><code>=PRODUCT(B2:E2)</code></pre>



<p class="wp-block-paragraph">結果は <strong>7,315</strong> です。10,000 × 0.7 × 0.95 × 1.10 = 7,315 ですね。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/03_result_discount-rate.png" alt="03 result discount rate" /></figure>



<p class="wp-block-paragraph"><code><em></code> 演算子で書くと <code>=B2</em>C2<em>D2</em>E2</code> です。掛け率の列が増えてもPRODUCT関数なら範囲を広げるだけで対応できます。新しい割引キャンペーン列を追加してもメンテが楽ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>掛け率の表では、未確定の列を空白にしておくとPRODUCT関数が自動でスキップしてくれます。0を入れると結果が0になってしまうので、「未確定=空白」のルールを徹底するのがコツです。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc13">パターン2: 複利計算（成長倍率の連続適用）</span></h3>



<p class="wp-block-paragraph">投資の複利計算や売上の年間成長率を連続で掛けたいときに便利です。</p>



<p class="wp-block-paragraph">A2:A6に5年分の成長倍率「1.05, 1.03, 1.08, 0.98, 1.04」が入っているとします。</p>



<pre class="wp-block-code"><code>=PRODUCT(A2:A6)</code></pre>



<p class="wp-block-paragraph">結果は約 <strong>1.190</strong> です。5年間で元の値が約1.19倍になったことがわかります。</p>



<p class="wp-block-paragraph">元本100万円の場合は次のように書きます。</p>



<pre class="wp-block-code"><code>=1000000 * PRODUCT(A2:A6)</code></pre>



<p class="wp-block-paragraph">結果は約 <strong>1,190,446</strong> 円です。元本に成長倍率を一括で掛けられるので、年ごとの計算列が不要になります。</p>



<p class="wp-block-paragraph">利率が一定の場合は POWER関数のほうがシンプルです。年利5%固定で5年間なら次のように書けます。</p>



<pre class="wp-block-code"><code>=1000000 * POWER(1.05, 5)</code></pre>



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



<ul class="wp-block-list"><li><strong>POWER関数</strong>: 同じ数値を繰り返し掛ける（利率一定の複利、面積計算など）</li><li><strong>PRODUCT関数</strong>: 異なる数値を順に掛ける（年ごとに変動する成長率、変則的な割引率など）</li></ul>



<p class="wp-block-paragraph">「毎年違う」がPRODUCT、「毎年同じ」がPOWERと覚えておくと迷いません。</p>



<h3 class="wp-block-heading"><span id="toc14">パターン3: 単位変換の一括計算</span></h3>



<p class="wp-block-paragraph">複数の変換係数を一度に掛けたいときにも使えます。</p>



<p class="wp-block-paragraph">たとえば「5ヤードをセンチメートルに変換」する場合です。1ヤード = 3フィート、1フィート = 12インチ、1インチ = 2.54cmなので、次のように書けます。</p>



<pre class="wp-block-code"><code>=PRODUCT(5, 3, 12, 2.54)</code></pre>



<p class="wp-block-paragraph">結果は <strong>457.2</strong> cmです。変換係数をセルに入れておけば、別の単位変換にも使い回せますよ。</p>



<h3 class="wp-block-heading"><span id="toc15">パターン4: 独立事象の確率を掛け合わせる</span></h3>



<p class="wp-block-paragraph">統計や品質管理では「独立した複数の事象がすべて発生する確率」を扱います。</p>



<p class="wp-block-paragraph">たとえば3つの部品がそれぞれ0.99、0.995、0.98の信頼度（故障しない確率）を持つとします。システム全体の信頼度は次のように求められますよ。</p>



<pre class="wp-block-code"><code>=PRODUCT(A1:A3)</code></pre>



<p class="wp-block-paragraph">A1:A3に「0.99, 0.995, 0.98」を入れると、結果は約 <strong>0.9656</strong>（約96.56%）です。</p>



<p class="wp-block-paragraph">部品が増えても、信頼度の列を追加して範囲を広げるだけで全体信頼度が計算できます。サーバの稼働率計算にも応用できますよ。</p>



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



<p class="wp-block-paragraph">PRODUCT関数で困ったときの原因と対策をまとめました。</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>セル参照に変更するか数値に修正する</td></tr><tr><td>#NAME?</td><td>関数名のスペルミス（PRODACT など）</td><td>関数名のスペルを確認する</td></tr><tr><td>#N/A</td><td>参照セルに #N/A エラーがある</td><td>IFERROR/IFNA でエラーを処理する</td></tr><tr><td>結果が0</td><td>範囲内に0のセルがある</td><td>0を空白にするか、IF関数で0以外だけを参照する</td></tr><tr><td>結果が0</td><td>空白に見えて実は0</td><td>セルをクリックして数式バーを確認する</td></tr><tr><td>想定より小さい値</td><td>範囲指定が足りない</td><td>数式バーで範囲を確認し必要なセルをすべて含める</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc17">0が含まれると結果が0になる</span></h3>



<p class="wp-block-paragraph">PRODUCT関数で最も多い「想定外」がこれです。</p>



<p class="wp-block-paragraph">掛け算なので、範囲のどこかに0が1つでもあると結果全体が0になります。これは数学的に正しい挙動ですが、実務では「0と空白を取り違えた」というケースが多いんですよ。</p>



<p class="wp-block-paragraph">空白セルは無視されますが、「0が入力されたセル」は計算に含まれて結果を0にしてしまいます。対処法はいくつかあります。</p>



<p class="wp-block-paragraph"><strong>対処法1: 0を空白にする</strong></p>



<p class="wp-block-paragraph">入力前のセルには0ではなく空白のままにしておきます。PRODUCT関数は空白を無視するので、入力済みの値だけで計算できますよ。</p>



<p class="wp-block-paragraph"><strong>対処法2: IF関数で0を除外する</strong></p>



<p class="wp-block-paragraph">0を含むセルをスキップしたい場合は、次のように書けます。</p>



<pre class="wp-block-code"><code>=PRODUCT(IF(A1:A5&lt;&gt;0, A1:A5, 1))</code></pre>



<p class="wp-block-paragraph">0のセルを1に置き換えることで、掛け算の結果に影響を与えずスキップできます。1を掛けても値が変わらない、という掛け算の性質を利用したテクニックですね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>Googleスプレッドシートではこの配列数式が自動的に展開されます。Excelの場合、Excel 2019以前はCtrl+Shift+Enterで配列数式として確定する必要があります。Excel 365以降は動的配列機能により自動展開されますよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc18">文字列が混在する場合</span></h3>



<p class="wp-block-paragraph">範囲内に文字列が混ざっていてもエラーにはなりません。PRODUCT関数は文字列を自動的に無視します。</p>



<p class="wp-block-paragraph">ただし、引数に直接文字列を指定すると <code>#VALUE!</code> エラーになります。</p>



<pre class="wp-block-code"><code>=PRODUCT(&quot;abc&quot;, 5)</code></pre>



<p class="wp-block-paragraph">この数式はエラーです。文字列はセル参照で範囲に含める形なら問題ありません。</p>



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



<p class="wp-block-paragraph">PRODUCT関数と関連する関数を比較します。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>機能</th><th>使う場面</th></tr></thead><tbody><tr><td><strong>PRODUCT</strong></td><td><strong>すべての値の積を返す</strong></td><td><strong>セル範囲をまとめて掛け算したいとき</strong></td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-sum-function/">SUM</a></td><td>すべての値の合計を返す</td><td>セル範囲を足し算したいとき</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-sumproduct-function/">SUMPRODUCT</a></td><td>行ごとの積を合計する</td><td>単価×数量の合計など</td></tr><tr><td>POWER</td><td>べき乗を返す</td><td>同じ数値を繰り返し掛けるとき</td></tr><tr><td>MULTIPLY</td><td>2つの数値を掛ける</td><td>2値専用の掛け算</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc20">SUM関数との対比</span></h3>



<p class="wp-block-paragraph">SUM関数とPRODUCT関数は「四則演算をまとめて実行する」という意味で対になる関数です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>SUM</th><th>PRODUCT</th></tr></thead><tbody><tr><td>演算</td><td>足し算（+）</td><td>掛け算（×）</td></tr><tr><td>空白セルの扱い</td><td>0として加算（結果に影響なし）</td><td>無視（結果に影響なし）</td></tr><tr><td>0の扱い</td><td>0を加算（結果に影響なし）</td><td>0を乗算（結果が0になる）</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">大きな違いは「0の影響」です。SUM関数は0を足しても結果に影響しません。一方、PRODUCT関数は0を1つでも掛けると結果全体が0になります。</p>



<p class="wp-block-paragraph">「足すなら0は無害、掛けるなら0は致命的」と覚えておくとよいですよ。</p>



<h3 class="wp-block-heading"><span id="toc21">SUMPRODUCT関数との違い</span></h3>



<p class="wp-block-paragraph">名前が似ていますが、役割が違います。</p>



<ul class="wp-block-list"><li><strong>PRODUCT関数</strong>: すべての値を掛け算する（純粋な積）</li><li><strong>SUMPRODUCT関数</strong>: 行ごとに掛け算してから合計する（積の和）</li></ul>



<p class="wp-block-paragraph">具体例で比較してみましょう。A列に「2, 3」、B列に「5, 4」があるとします。</p>



<pre class="wp-block-code"><code>=PRODUCT(A1:A2, B1:B2)    → 2 × 3 × 5 × 4 = 120
=SUMPRODUCT(A1:A2, B1:B2) → (2×5) + (3×4) = 22</code></pre>



<p class="wp-block-paragraph">PRODUCT関数は4つの値をすべて掛けます。SUMPRODUCT関数は行ごとに掛けてから合計します。</p>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-product-function/04_result_product-vs-sumproduct.png/">_images/spreadsheet-product-function/04_result_product-vs-sumproduct.png</a></p>



<p class="wp-block-paragraph">「単価 × 数量の合計金額」を求めるなら<a href="https://mashukabu.com/spreadsheet-sumproduct-function/">SUMPRODUCT関数</a>を使いましょう。「複数の倍率をまとめて掛ける」ならPRODUCT関数が適しています。</p>



<h3 class="wp-block-heading"><span id="toc22">Excelとの違い</span></h3>



<p class="wp-block-paragraph">PRODUCT関数の動作はExcelとほぼ同じです。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Googleスプレッドシート</th><th>Excel</th></tr></thead><tbody><tr><td>基本動作</td><td>同じ</td><td>同じ</td></tr><tr><td>引数の上限</td><td>最大255個</td><td>最大255個</td></tr><tr><td>空白セルの扱い</td><td>無視</td><td>無視</td></tr><tr><td>文字列の扱い</td><td>無視</td><td>無視</td></tr><tr><td>配列数式</td><td>自動展開</td><td>Excel 365は自動、2019以前はCtrl+Shift+Enter</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数の上限は両方とも255個ですが、255個を超える掛け算は実務ではまず使いません。Excelと同じ書き方で使えるので、スプレッドシートとExcelを併用している方も安心ですよ。</p>



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



<p class="wp-block-paragraph">スプレッドシートのPRODUCT関数のポイントをおさらいしましょう。</p>



<ul class="wp-block-list"><li>構文は <code>=PRODUCT(数値1, [数値2], ...)</code> で、指定した値をすべて掛け算する</li><li><code>*</code> 演算子よりセルが多いときにスッキリ書ける</li><li>空白セルや文字列は自動でスキップしてくれる</li><li><strong>0が1つでもあると結果が0になる</strong>ので注意</li><li>0を残したまま除外したい場合は <code>=PRODUCT(IF(範囲<>0, 範囲, 1))</code> で対応する</li><li><a href="https://mashukabu.com/spreadsheet-sum-function/">SUM関数</a>は「全部足す」、PRODUCT関数は「全部掛ける」</li><li><a href="https://mashukabu.com/spreadsheet-sumproduct-function/">SUMPRODUCT関数</a>は「行ごとに掛けてから足す」で役割が違う</li><li>同じ値を繰り返し掛けるならPOWER関数のほうが意図が明確</li></ul>



<p class="wp-block-paragraph">まずは <code>=PRODUCT(A1:A5)</code> のシンプルな形から試してみてください。掛け算するセルが多い場面で、式がスッキリして便利ですよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-product-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
