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

<channel>
	<title>逆行列 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/%e9%80%86%e8%a1%8c%e5%88%97/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Fri, 03 Apr 2026 23:37:25 +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>スプレッドシートのMINVERSE関数の使い方｜逆行列</title>
		<link>https://mashukabu.com/spreadsheet-minverse-function/</link>
					<comments>https://mashukabu.com/spreadsheet-minverse-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 26 Mar 2026 11:44:03 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[MDETERM関数]]></category>
		<category><![CDATA[MINVERSE関数]]></category>
		<category><![CDATA[MMULT関数]]></category>
		<category><![CDATA[正方行列]]></category>
		<category><![CDATA[行列計算]]></category>
		<category><![CDATA[逆行列]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5291</guid>

					<description><![CDATA[スプレッドシートのMINVERSE関数で正方行列の逆行列を求める方法を解説。2×2・3×3行列の計算例、MDETERM関数で特異行列を事前チェック、MMULT関数と組み合わせた連立方程式の解法まで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで逆行列を手計算するのは大変ですよね。2×2行列でも4つの要素を入れ替えたり符号を変えたりと手間がかかります。3×3以上になると、計算ミスのリスクもぐっと高まります。</p>



<p class="wp-block-paragraph">MINVERSE関数を使えば、正方行列の逆行列をセル範囲の指定だけで求められます。MMULT関数と組み合わせれば、連立方程式を解くこともできますよ。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのMINVERSE関数の基本から、連立方程式の解法まで解説します。</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">スプレッドシートのMINVERSE関数とは？</a></li><li><a href="#toc2" tabindex="0">MINVERSE関数の書き方</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">MINVERSE関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">2×2行列の逆行列を求める</a></li><li><a href="#toc7" tabindex="0">3×3行列の逆行列を求める</a></li></ol></li><li><a href="#toc8" tabindex="0">実践的な使い方・応用例</a><ol><li><a href="#toc9" tabindex="0">MDETERM関数で特異行列かどうか事前チェックする</a></li><li><a href="#toc10" tabindex="0">MMULT関数と組み合わせて連立方程式を解く</a></li></ol></li><li><a href="#toc11" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc12" tabindex="0">#NUM! エラー</a></li><li><a href="#toc13" tabindex="0">#VALUE! エラー</a></li></ol></li><li><a href="#toc14" tabindex="0">関連する行列関数との使い分け</a></li><li><a href="#toc15" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">MINVERSE関数は、正方行列（行数と列数が等しい行列）の<strong>逆行列（inverse matrix）</strong>を返す関数です。</p>



<p class="wp-block-paragraph">読み方は「<strong>マトリックス インバース</strong>」です。「Matrix」は行列、「Inverse」は逆を意味します。</p>



<p class="wp-block-paragraph">逆行列とは、元の行列にかけると単位行列（対角線が1、それ以外が0の行列）になる行列のことです。数学的には <code>A × A⁻¹ = I</code>（単位行列）という関係が成り立ちます。</p>



<p class="wp-block-paragraph">行列計算に使う関数ではありますが、使い方自体はシンプルです。セル範囲を指定するだけで結果が返ってきますよ。</p>



<h2 class="wp-block-heading"><span id="toc2">MINVERSE関数の書き方</span></h2>



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



<pre class="wp-block-code"><code>=MINVERSE(正方行列)</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></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけなので、覚えやすいですね。</p>



<p class="wp-block-paragraph">セル範囲（例: <code>A1:B2</code>）のほか、配列定数（例: <code>{1,2;3,4}</code>）も指定できます。配列定数では、カンマが列区切り、セミコロンが行区切りです。</p>



<p class="wp-block-paragraph">MINVERSE関数は結果を配列（N×N行列）として返します。Googleスプレッドシートでは、出力先のセル範囲に自動的に展開されますよ。</p>



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



<h3 class="wp-block-heading"><span id="toc6">2×2行列の逆行列を求める</span></h3>



<p class="wp-block-paragraph">まずは最もシンプルな2×2行列から試してみましょう。</p>



<p class="wp-block-paragraph">セルA1:B2に以下のデータが入っているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th></tr></thead><tbody><tr><td>1</td><td>4</td><td>7</td></tr><tr><td>2</td><td>2</td><td>6</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">任意のセル（例: D1）に次の数式を入力します。</p>



<pre class="wp-block-code"><code>=MINVERSE(A1:B2)</code></pre>



<p class="wp-block-paragraph">D1:E2に以下の逆行列が表示されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>D</th><th>E</th></tr></thead><tbody><tr><td>1</td><td>0.6</td><td>-0.7</td></tr><tr><td>2</td><td>-0.2</td><td>0.4</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">2×2行列の逆行列は手計算でも確認できます。行列式 <code>ad - bc</code> を分母にして、要素を入れ替える公式を使います。</p>



<pre class="wp-block-code"><code>行列式 = 4×6 - 7×2 = 24 - 14 = 10

逆行列 = (1/10) × [[6, -7], [-2, 4]]
       = [[0.6, -0.7], [-0.2, 0.4]]</code></pre>



<p class="wp-block-paragraph">関数の結果と一致しましたね。</p>



<p class="wp-block-paragraph">配列定数を使って直接入力する方法もあります。</p>



<pre class="wp-block-code"><code>=MINVERSE({4,7;2,6})</code></pre>



<p class="wp-block-paragraph">こちらも同じ結果が返ります。</p>



<h3 class="wp-block-heading"><span id="toc7">3×3行列の逆行列を求める</span></h3>



<p class="wp-block-paragraph">次に3×3行列の例を見てみましょう。</p>



<p class="wp-block-paragraph">セルA1:C3に以下のデータが入っているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>1</td><td>3</td><td>6</td><td>1</td></tr><tr><td>2</td><td>1</td><td>1</td><td>0</td></tr><tr><td>3</td><td>3</td><td>10</td><td>2</td></tr></tbody></table></figure>



<pre class="wp-block-code"><code>=MINVERSE(A1:C3)</code></pre>



<p class="wp-block-paragraph">結果は以下の3×3行列になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>D</th><th>E</th><th>F</th></tr></thead><tbody><tr><td>1</td><td>2</td><td>-2</td><td>-1</td></tr><tr><td>2</td><td>-2</td><td>3</td><td>1</td></tr><tr><td>3</td><td>7</td><td>-12</td><td>-3</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">この行列の<a href="https://mashukabu.com/spreadsheet-mdeterm-function/">行列式はMDETERM関数</a>で確認すると <strong>1</strong> です。行列式が0以外なので、逆行列が存在します。</p>



<p class="wp-block-paragraph">3×3以上の逆行列を手計算で求めるのはかなり手間がかかります。MINVERSE関数に任せるのが安心ですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc9">MDETERM関数で特異行列かどうか事前チェックする</span></h3>



<p class="wp-block-paragraph">逆行列が存在しない行列を「<strong>特異行列</strong>」と呼びます。特異行列にMINVERSE関数を使うと <code>#NUM!</code> エラーになります。</p>



<p class="wp-block-paragraph">事前に<a href="https://mashukabu.com/spreadsheet-mdeterm-function/">MDETERM関数</a>で行列式を確認しておくと、エラーを未然に防げますよ。</p>



<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>1</td><td>2</td><td>4</td></tr><tr><td>2</td><td>1</td><td>2</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">この行列の行列式は 2×2 &#8211; 4×1 = 0 です。2行目が1行目のちょうど半分なので、特異行列ですね。</p>



<p class="wp-block-paragraph">IF関数と組み合わせれば、安全に逆行列を求められます。</p>



<pre class="wp-block-code"><code>=IF(MDETERM(A1:B2)&lt;&gt;0, MINVERSE(A1:B2), &quot;逆行列なし&quot;)</code></pre>



<p class="wp-block-paragraph">行列式が0でなければ逆行列を計算し、0なら「逆行列なし」と表示します。</p>



<h3 class="wp-block-heading"><span id="toc10">MMULT関数と組み合わせて連立方程式を解く</span></h3>



<p class="wp-block-paragraph">MINVERSE関数の実践的な活用例として、連立方程式の解法があります。</p>



<p class="wp-block-paragraph">連立方程式は行列で表すと <code>Ax = b</code> の形になります。両辺に <code>A</code> の逆行列をかけると <code>x = A⁻¹b</code> で解が求まります。</p>



<p class="wp-block-paragraph">次の連立方程式を解いてみましょう。</p>



<pre class="wp-block-code"><code>3x + 6y + z = 11
 x +  y     = 2
3x + 10y + 2z = 17</code></pre>



<p class="wp-block-paragraph">まず、係数行列AをセルA1:C3に、定数ベクトルbをセルE1:E3に入力します。</p>



<p class="wp-block-paragraph"><strong>係数行列A</strong></p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>1</td><td>3</td><td>6</td><td>1</td></tr><tr><td>2</td><td>1</td><td>1</td><td>0</td></tr><tr><td>3</td><td>3</td><td>10</td><td>2</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>定数ベクトルb</strong></p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>E</th></tr></thead><tbody><tr><td>1</td><td>11</td></tr><tr><td>2</td><td>2</td></tr><tr><td>3</td><td>17</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">任意のセル（例: G1）に次の数式を入力します。</p>



<pre class="wp-block-code"><code>=MMULT(MINVERSE(A1:C3), E1:E3)</code></pre>



<p class="wp-block-paragraph">MMULT関数は行列の積を計算する関数です。MINVERSE関数で逆行列を求め、それと定数ベクトルの積を計算することで、解が得られます。</p>



<p class="wp-block-paragraph">結果は以下のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>G</th></tr></thead><tbody><tr><td>1</td><td>1</td></tr><tr><td>2</td><td>1</td></tr><tr><td>3</td><td>2</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">つまり x=1, y=1, z=2 が解です。</p>



<p class="wp-block-paragraph">検算してみましょう。1つ目の式に代入すると 3×1 + 6×1 + 1×2 = 11 で正しいですね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>連立方程式を解く前に、MDETERM関数で係数行列の行列式が0でないことを確認しましょう。行列式が0の場合、一意の解は存在しません。</p></blockquote>



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



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



<p class="wp-block-paragraph"><code>#NUM!</code> エラーは、行列式が0の行列（特異行列）を指定した場合に発生します。</p>



<pre class="wp-block-code"><code>=MINVERSE({2,4;1,2})  → #NUM!</code></pre>



<p class="wp-block-paragraph">MDETERM関数で行列式を確認し、0でない行列に対してのみ使用してください。</p>



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



<p class="wp-block-paragraph"><code>#VALUE!</code> エラーが出る原因は主に2つあります。</p>



<p class="wp-block-paragraph"><strong>原因1: 正方行列でない</strong></p>



<p class="wp-block-paragraph">行数と列数が異なるセル範囲を指定するとエラーになります。</p>



<pre class="wp-block-code"><code>=MINVERSE(A1:C2)  → #VALUE!（2行3列は正方行列でない）</code></pre>



<p class="wp-block-paragraph">指定するセル範囲が正方形（2×2、3×3など）になっているか確認してください。</p>



<p class="wp-block-paragraph"><strong>原因2: 数値以外のセルが含まれている</strong></p>



<p class="wp-block-paragraph">セル範囲に空白セルや文字列が含まれている場合もエラーになります。すべてのセルに数値が入力されているかチェックしましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>主な原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#NUM!</code></td><td>行列式が0（特異行列）</td><td>MDETERM関数で事前に行列式を確認する</td></tr><tr><td><code>#VALUE!</code></td><td>行数と列数が不一致</td><td>正方行列（N×N）のセル範囲を指定する</td></tr><tr><td><code>#VALUE!</code></td><td>空白・文字列を含む</td><td>すべてのセルに数値を入力する</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc14">関連する行列関数との使い分け</span></h2>



<p class="wp-block-paragraph">スプレッドシートには、MINVERSE関数以外にも行列計算に使える関数があります。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>機能</th><th>用途</th></tr></thead><tbody><tr><td>MINVERSE</td><td>逆行列を返す</td><td>連立方程式を解く、変換行列の逆変換</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-mdeterm-function/">MDETERM</a></td><td>行列式を返す</td><td>逆行列の存在判定、連立方程式の解の判定</td></tr><tr><td>MMULT</td><td>行列の積を返す</td><td>座標変換、重み付き合計の一括計算</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-transpose-function/">TRANSPOSE</a></td><td>行と列を入れ替える</td><td>表の縦横変換、データ整形</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">行列計算の基本的な流れは、まず<a href="https://mashukabu.com/spreadsheet-mdeterm-function/">MDETERM関数</a>で行列式を確認します。0でなければMINVERSE関数で逆行列を求めましょう。MMULT関数と組み合わせれば、連立方程式もスプレッドシート上で解けますよ。</p>



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



<p class="wp-block-paragraph">MINVERSE関数は、正方行列の逆行列を求める関数です。</p>



<ul class="wp-block-list"><li>構文は <code>=MINVERSE(正方行列)</code> で、引数は1つだけ</li><li>結果はN×N行列として自動展開される</li><li>行列式が0の特異行列には <code>#NUM!</code> エラーが返る</li><li>MDETERM関数で事前に行列式を確認すると安全</li><li>MMULT関数と組み合わせれば、連立方程式の解も求められる</li></ul>



<p class="wp-block-paragraph">数学的な関数ではありますが、使い方自体はセル範囲を指定するだけなので難しくありません。連立方程式を解きたいときに、ぜひ活用してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-minverse-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのMINVERSE関数の使い方｜逆行列を求めて連立方程式を解く方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-minverse/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-minverse/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 09 Feb 2023 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[MINVERSE]]></category>
		<category><![CDATA[行列]]></category>
		<category><![CDATA[逆行列]]></category>
		<category><![CDATA[連立方程式]]></category>
		<category><![CDATA[配列数式]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3335</guid>

					<description><![CDATA[ExcelのMINVERSE関数で正方行列の逆行列を求める方法を解説します。構文・引数の基本から、MMULT関数と組み合わせた連立方程式の解法、よくあるエラー（#VALUE!・#NUM!）の原因と対処法、MDETERM・TRANSPOSE関数との使い分けまで実例付きで紹介。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「Excelで逆行列を求めたいけど、やり方がわからない」「連立方程式をExcelで解けたら便利なのに」と思ったことはありませんか。</p>



<p class="wp-block-paragraph">手計算で逆行列を求めるのは行列が大きくなるほど大変ですし、計算ミスも起きやすいですよね。</p>



<p class="wp-block-paragraph">MINVERSE関数を使えば、正方行列の逆行列をワンステップで算出できます。さらにMMULT関数と組み合わせると、連立方程式の解まで一気に求められます。この記事では基本の使い方から実務で役立つ応用例まで、順を追って解説していきます。</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">MINVERSE関数とは？</a></li><li><a href="#toc2" tabindex="0">MINVERSE関数の書き方（構文と引数）</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">基本的な使い方</a><ol><li><a href="#toc7" tabindex="0">2&#215;2行列の逆行列を求める</a></li><li><a href="#toc8" tabindex="0">3&#215;3行列の逆行列を求める</a></li><li><a href="#toc9" tabindex="0">セル参照を使った基本的な入力</a></li></ol></li><li><a href="#toc10" tabindex="0">実務で役立つ活用例</a><ol><li><a href="#toc11" tabindex="0">連立方程式を解く</a></li><li><a href="#toc12" tabindex="0">逆行列の存在確認と検算</a></li></ol></li><li><a href="#toc13" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc14" tabindex="0">まとめ</a><ol><li><a href="#toc15" tabindex="0">関連する行列関数との使い分け</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">MINVERSE関数は、指定した正方行列（行数と列数が同じ行列）の<strong>逆行列</strong>を返す関数です。</p>



<ul class="wp-block-list"><li><strong>読み方</strong>: マトリックス・インバース（Matrix Inverse）</li><li><strong>語源</strong>: 「M」はMatrix（行列）、「INVERSE」は逆（Inverse）を意味します</li><li><strong>対応バージョン</strong>: Excel 2003以降 / Microsoft 365</li></ul>



<p class="wp-block-paragraph">逆行列とは、元の行列に掛け合わせると単位行列（対角成分が1、それ以外が0の行列）になる行列のことです。数式で書くと「A x A^(-1) = I（単位行列）」という関係が成り立ちます。</p>



<p class="wp-block-paragraph">逆行列が求められるのは、行列式（MDETERM関数で算出できる値）が0でない正方行列に限られます。行列式が0の行列は「特異行列」と呼ばれ、逆行列は存在しません。</p>



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



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



<pre class="wp-block-code"><code>=MINVERSE(配列)</code></pre>



<p class="wp-block-paragraph">MINVERSE関数の引数は1つだけなので、とてもシンプルです。</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>配列</td><td>必須</td><td>行数と列数が等しい数値配列（正方行列）を指定します</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>配列に指定できるもの</strong>:</p>



<ul class="wp-block-list"><li>セル範囲（例: B2:D4）</li><li>配列定数（例: {1,2;3,4}）</li></ul>



<p class="wp-block-paragraph"><strong>注意点</strong>:</p>



<ul class="wp-block-list"><li>行数と列数が異なる範囲を指定すると <code>#VALUE!</code> エラーになります</li><li>空白セルや文字列が含まれていると <code>#VALUE!</code> エラーになります</li><li>行列式が0の行列を指定すると <code>#NUM!</code> エラーになります</li></ul>



<h3 class="wp-block-heading"><span id="toc5">配列数式としての入力方法</span></h3>



<p class="wp-block-paragraph">MINVERSE関数は結果を配列（複数のセル）で返します。入力方法はExcelのバージョンによって異なります。</p>



<ul class="wp-block-list"><li><strong>Microsoft 365 / Excel 2021以降</strong>: 1つのセルに <code>=MINVERSE(B2:C3)</code> と入力してEnterキーを押すだけで、結果が自動的にスピル（隣接セルに展開）されます</li><li><strong>Excel 2019以前</strong>: 結果を表示したいセル範囲をあらかじめ選択し、数式を入力した後に <strong>Ctrl + Shift + Enter</strong> で確定します。数式バーに <code>{=MINVERSE(B2:C3)}</code> と波括弧が付けば成功です</li></ul>



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



<h3 class="wp-block-heading"><span id="toc7">2&#215;2行列の逆行列を求める</span></h3>



<p class="wp-block-paragraph">まずは最もシンプルな2&#215;2行列で試してみましょう。</p>



<p class="wp-block-paragraph">セルB2:C3に以下のような行列が入力されているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>2</td><td>4</td><td>7</td></tr><tr><td>3</td><td>2</td><td>6</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">逆行列を求めるには、結果を表示したいセル（例: E2）に次の数式を入力します。</p>



<pre class="wp-block-code"><code>=MINVERSE(B2:C3)</code></pre>



<p class="wp-block-paragraph">結果として、E2:F3に逆行列の値が表示されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>E</th><th>F</th></tr></thead><tbody><tr><td>2</td><td>0.6</td><td>-0.7</td></tr><tr><td>3</td><td>-0.2</td><td>0.4</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">この結果が正しいか確認するには、元の行列と逆行列を掛け合わせて単位行列になるかチェックします。<a href="https://mashukabu.com/excel-function-howto-use-mmult/">MMULT関数</a>を使って <code>=MMULT(B2:C3,E2:F3)</code> と入力すると、対角成分が1、それ以外がほぼ0の単位行列が得られます。</p>



<h3 class="wp-block-heading"><span id="toc8">3&#215;3行列の逆行列を求める</span></h3>



<p class="wp-block-paragraph">3&#215;3以上の行列でも使い方は同じです。</p>



<p class="wp-block-paragraph">セルB2:D4に3&#215;3の行列が入力されている場合、結果を表示したいセル（例: F2）に次のように入力します。</p>



<pre class="wp-block-code"><code>=MINVERSE(B2:D4)</code></pre>



<p class="wp-block-paragraph">F2:H4に3&#215;3の逆行列が展開されます。行列が大きくなるほど手計算は大変ですが、MINVERSE関数なら一瞬で結果が出るのでとても便利です。</p>



<h3 class="wp-block-heading"><span id="toc9">セル参照を使った基本的な入力</span></h3>



<p class="wp-block-paragraph">配列定数を直接指定する方法もあります。2&#215;2行列の場合、次のように書けます。</p>



<pre class="wp-block-code"><code>=MINVERSE({4,7;2,6})</code></pre>



<p class="wp-block-paragraph">配列定数では、列の区切りにカンマ（,）、行の区切りにセミコロン（;）を使います。ただし、行列が大きくなるとセル範囲で指定する方が見やすくなります。</p>



<h2 class="wp-block-heading"><span id="toc10">実務で役立つ活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc11">連立方程式を解く</span></h3>



<p class="wp-block-paragraph">MINVERSE関数の実務的な使い道として最も多いのが、連立方程式を解くケースです。</p>



<p class="wp-block-paragraph">たとえば、次の連立方程式を考えます。</p>



<pre class="wp-block-code"><code>2x + 3y = 8
4x + 1y = 10</code></pre>



<p class="wp-block-paragraph">これを行列の形に変換すると「Ax = b」と表せます。</p>



<ul class="wp-block-list"><li>係数行列 A: <code>{2,3;4,1}</code></li><li>定数ベクトル b: <code>{8;10}</code></li></ul>



<p class="wp-block-paragraph">解は「x = A^(-1) x b」なので、MINVERSE関数と<a href="https://mashukabu.com/excel-function-howto-use-mmult/">MMULT関数</a>を組み合わせます。</p>



<pre class="wp-block-code"><code>=MMULT(MINVERSE(B2:C3),E2:E3)</code></pre>



<p class="wp-block-paragraph">B2:C3に係数行列、E2:E3に定数ベクトルを入力しておくと、この数式で <code>x = 2.6</code>, <code>y = 0.93...</code> といった解が一発で求められます。</p>



<p class="wp-block-paragraph">手順をまとめると次のとおりです。</p>



<ol class="wp-block-list"><li>係数行列をセルに入力する（例: B2:C3）</li><li>定数ベクトルをセルに入力する（例: E2:E3）</li><li>解を表示したいセルに <code>=MMULT(MINVERSE(B2:C3),E2:E3)</code> と入力する</li><li>Enterキーを押す（Excel 2019以前はCtrl+Shift+Enter）</li></ol>



<p class="wp-block-paragraph">3元連立方程式でも同じ考え方で解けます。係数行列を3&#215;3に、定数ベクトルを3行にするだけです。</p>



<h3 class="wp-block-heading"><span id="toc12">逆行列の存在確認と検算</span></h3>



<p class="wp-block-paragraph">逆行列が存在するかどうかを事前にチェックするには、<a href="https://mashukabu.com/excel-function-howto-use-mdeterm/">MDETERM関数</a>で行列式を求めます。</p>



<pre class="wp-block-code"><code>=MDETERM(B2:C3)</code></pre>



<p class="wp-block-paragraph">この結果が0でなければ逆行列が存在します。0の場合はMINVERSE関数を使っても <code>#NUM!</code> エラーになるため、先にMDETERM関数で確認しておくとスムーズです。</p>



<p class="wp-block-paragraph">逆行列が正しいかの検算には、元の行列と逆行列の積が単位行列になるかを確認します。</p>



<pre class="wp-block-code"><code>=MMULT(B2:C3,MINVERSE(B2:C3))</code></pre>



<p class="wp-block-paragraph">結果の対角成分が1、それ以外が0（または非常に小さい値）になっていれば正しく計算されています。浮動小数点の関係で完全な0にならず、1E-16のような極小の値が表示されることがありますが、これは誤差の範囲内なので問題ありません。</p>



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



<p class="wp-block-paragraph">MINVERSE関数で発生しやすいエラーと、その原因・対処法をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#VALUE!</code></td><td>行数と列数が異なる範囲を指定した</td><td>正方行列（2&#215;2、3&#215;3など）になっているか確認する</td></tr><tr><td><code>#VALUE!</code></td><td>配列内に空白セルや文字列が含まれている</td><td>すべてのセルに数値が入力されているか確認する</td></tr><tr><td><code>#NUM!</code></td><td>行列式が0の特異行列を指定した</td><td>MDETERM関数で行列式を確認し、0でないことを確かめる</td></tr><tr><td>極小の値が表示される</td><td>浮動小数点演算の誤差</td><td>ROUND関数で丸める（例: <code>=ROUND(MINVERSE(B2:C3),10)</code>）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><code>#VALUE!</code> エラーが出たときは、まず指定した範囲が正方形になっているかを確認してください。たとえば2行3列の範囲を指定していないか、途中に空白や文字が混じっていないかをチェックするのがポイントです。</p>



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



<p class="wp-block-paragraph">MINVERSE関数は、Excelで正方行列の逆行列を求めるための関数です。</p>



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



<ul class="wp-block-list"><li>MINVERSE関数の引数は「配列」の1つだけ。正方行列を指定する</li><li>Microsoft 365やExcel 2021以降ではスピル対応。Excel 2019以前ではCtrl+Shift+Enterで入力する</li><li>MMULT関数と組み合わせることで連立方程式を解ける</li><li>エラーが出たらまず「正方行列か」「数値のみか」「行列式が0でないか」を確認する</li></ul>



<p class="wp-block-paragraph">逆行列の計算は手作業だとミスが起きやすい処理ですが、MINVERSE関数を使えば正確に素早く結果を得られます。連立方程式を解く場面でもぜひ活用してみてください。</p>



<h3 class="wp-block-heading"><span id="toc15">関連する行列関数との使い分け</span></h3>



<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/excel-function-howto-use-minverse/">MINVERSE</a></td><td>逆行列を求める</td><td>正方行列</td><td>逆行列（配列）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-mmult/">MMULT</a></td><td>行列の積を求める</td><td>2つの行列</td><td>積の行列（配列）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-mdeterm/">MDETERM</a></td><td>行列式を求める</td><td>正方行列</td><td>数値（スカラー）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-transpose/">TRANSPOSE</a></td><td>行と列を入れ替える</td><td>任意の配列</td><td>転置行列（配列）</td></tr></tbody></table></figure>



<ul class="wp-block-list"><li>連立方程式を解きたい → MINVERSE + MMULT</li><li>行列の掛け算をしたい → MMULT</li><li>逆行列が存在するか確認したい → MDETERM</li><li>行と列を入れ替えたい → TRANSPOSE</li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-minverse/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのMDETERM関数の使い方｜行列式を求めて逆行列の存在を確認する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-mdeterm/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-mdeterm/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 08 Feb 2023 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[MDETERM]]></category>
		<category><![CDATA[正方行列]]></category>
		<category><![CDATA[行列]]></category>
		<category><![CDATA[行列式]]></category>
		<category><![CDATA[逆行列]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3278</guid>

					<description><![CDATA[ExcelのMDETERM関数で正方行列の行列式を求める方法を解説。構文・引数の基本から2x2・3x3行列の計算例、MINVERSE関数と組み合わせた逆行列の存在確認、連立方程式の解の有無判定、浮動小数点誤差の対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「Excelで行列式を求めたいけど、どの関数を使えばいいの?」「行列式が0かどうかで逆行列が存在するか判定したい」と思ったことはありませんか。</p>



<p class="wp-block-paragraph">行列式の手計算は3&#215;3以上になると工程が増えて、計算ミスが起きやすいですよね。</p>



<p class="wp-block-paragraph">MDETERM関数を使えば、正方行列の行列式をワンステップで算出できます。さらにMINVERSE関数と組み合わせれば、逆行列が存在するかどうかの事前チェックにも活用できます。この記事では基本の使い方から実務的な応用まで、順を追って解説していきます。</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">MDETERM関数とは?</a></li><li><a href="#toc2" tabindex="0">MDETERM関数の書き方（構文と引数）</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">基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">2&#215;2行列の行列式を求める</a></li><li><a href="#toc7" tabindex="0">3&#215;3行列の行列式を求める</a></li><li><a href="#toc8" tabindex="0">配列定数を直接指定する</a></li></ol></li><li><a href="#toc9" tabindex="0">実務で役立つ活用例</a><ol><li><a href="#toc10" tabindex="0">逆行列の存在確認に使う</a></li><li><a href="#toc11" tabindex="0">連立方程式の解の有無を判定する</a></li><li><a href="#toc12" tabindex="0">計算結果の検算に使う</a></li></ol></li><li><a href="#toc13" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc14" tabindex="0">まとめ</a><ol><li><a href="#toc15" tabindex="0">関連する行列関数との使い分け</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">MDETERM関数は、指定した正方行列（行数と列数が同じ行列）の<strong>行列式</strong>（determinant）を返す関数です。</p>



<ul class="wp-block-list"><li><strong>読み方</strong>: マトリックス・ディターミナント（Matrix Determinant）</li><li><strong>語源</strong>: 「M」はMatrix（行列）、「DETERM」はDeterminant（行列式）の略です</li><li><strong>対応バージョン</strong>: Excel 2003以降 / Microsoft 365</li></ul>



<p class="wp-block-paragraph">行列式とは、正方行列から計算される1つの数値のことです。行列式が0でなければ逆行列が存在し、0であれば逆行列は存在しません（このような行列を「特異行列」と呼びます）。</p>



<p class="wp-block-paragraph">行列式は数学・工学・統計の分野で幅広く使われていますが、Excelでの主な用途は次の2つです。</p>



<ul class="wp-block-list"><li>逆行列が存在するか（=連立方程式に解があるか）の判定</li><li>行列に関する各種計算の中間ステップ</li></ul>



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



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



<pre class="wp-block-code"><code>=MDETERM(配列)</code></pre>



<p class="wp-block-paragraph">MDETERM関数の引数は1つだけなので、とてもシンプルです。</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>配列</td><td>必須</td><td>行数と列数が等しい数値配列（正方行列）を指定します</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>配列に指定できるもの</strong>:</p>



<ul class="wp-block-list"><li>セル範囲（例: B2:C3、B2:D4）</li><li>配列定数（例: <code>{1,2;3,4}</code>）</li></ul>



<p class="wp-block-paragraph"><strong>注意点</strong>:</p>



<ul class="wp-block-list"><li>行数と列数が異なる範囲を指定すると <code>#VALUE!</code> エラーになります</li><li>空白セルや文字列が含まれていると <code>#VALUE!</code> エラーになります</li><li>結果は1つの数値（スカラー値）なので、配列数式として入力する必要はありません</li></ul>



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



<h3 class="wp-block-heading"><span id="toc6">2&#215;2行列の行列式を求める</span></h3>



<p class="wp-block-paragraph">まずは最もシンプルな2&#215;2行列で試してみましょう。</p>



<p class="wp-block-paragraph">セルB2:C3に以下のような行列が入力されているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>2</td><td>4</td><td>7</td></tr><tr><td>3</td><td>2</td><td>6</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">行列式を求めるには、結果を表示したいセル（例: E2）に次の数式を入力します。</p>



<pre class="wp-block-code"><code>=MDETERM(B2:C3)</code></pre>



<p class="wp-block-paragraph">結果は <strong>10</strong> になります。</p>



<p class="wp-block-paragraph">2&#215;2行列の行列式は「ad &#8211; bc」の公式で手計算できます。上の例では <code>4×6 - 7×2 = 24 - 14 = 10</code> となり、MDETERM関数の結果と一致していますね。</p>



<p class="wp-block-paragraph">行列式が0でないので、この行列には逆行列が存在することもわかります。</p>



<h3 class="wp-block-heading"><span id="toc7">3&#215;3行列の行列式を求める</span></h3>



<p class="wp-block-paragraph">3&#215;3行列でも使い方は同じです。</p>



<p class="wp-block-paragraph">セルB2:D4に以下の行列が入力されている場合を考えます。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>B</th><th>C</th><th>D</th></tr></thead><tbody><tr><td>2</td><td>3</td><td>6</td><td>1</td></tr><tr><td>3</td><td>1</td><td>1</td><td>0</td></tr><tr><td>4</td><td>3</td><td>10</td><td>2</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">次の数式を入力します。</p>



<pre class="wp-block-code"><code>=MDETERM(B2:D4)</code></pre>



<p class="wp-block-paragraph">結果は <strong>1</strong> になります。</p>



<p class="wp-block-paragraph">3&#215;3以上の行列式の手計算は複雑になりますが、MDETERM関数なら一瞬で結果が出ます。手計算での検算方法を知りたい方のために補足すると、3&#215;3行列では「サラスの公式」を使って次のように展開します。</p>



<pre class="wp-block-code"><code>行列式 = a(ei-fh) - b(di-fg) + c(dh-eg)</code></pre>



<p class="wp-block-paragraph">上の例に当てはめると <code>3(1×2-0×10) - 6(1×2-0×3) + 1(1×10-1×3) = 6 - 12 + 7 = 1</code> となります。</p>



<h3 class="wp-block-heading"><span id="toc8">配列定数を直接指定する</span></h3>



<p class="wp-block-paragraph">セル範囲を使わず、数式の中に配列定数を直接書くこともできます。</p>



<pre class="wp-block-code"><code>=MDETERM({3,6;1,1})</code></pre>



<p class="wp-block-paragraph">結果は <strong>-3</strong> になります（3×1 &#8211; 6×1 = -3）。</p>



<p class="wp-block-paragraph">配列定数では、列の区切りにカンマ（,）、行の区切りにセミコロン（;）を使います。ちょっとした計算の確認には便利ですが、行列が大きくなるとセル範囲で指定する方が見やすくなります。</p>



<h2 class="wp-block-heading"><span id="toc9">実務で役立つ活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc10">逆行列の存在確認に使う</span></h3>



<p class="wp-block-paragraph">MDETERM関数の最も実務的な使い道は、<a href="https://mashukabu.com/excel-function-howto-use-minverse/">MINVERSE関数</a>で逆行列を求める前の事前チェックです。</p>



<p class="wp-block-paragraph">逆行列が存在するのは、行列式が0でない場合だけです。行列式が0の行列（特異行列）にMINVERSE関数を使うと <code>#NUM!</code> エラーになってしまいます。事前にMDETERM関数で確認しておくとスムーズです。</p>



<p class="wp-block-paragraph">手順は次のとおりです。</p>



<ol class="wp-block-list"><li>MDETERM関数で行列式を求める</li></ol>



<pre class="wp-block-code"><code>=MDETERM(B2:D4)</code></pre>



<ol class="wp-block-list"><li>結果が0でなければ、MINVERSE関数で逆行列を求める</li></ol>



<pre class="wp-block-code"><code>=MINVERSE(B2:D4)</code></pre>



<ol class="wp-block-list"><li>結果が0なら、その行列には逆行列が存在しないとわかる</li></ol>



<p class="wp-block-paragraph">IF関数と組み合わせて自動判定する方法もあります。</p>



<pre class="wp-block-code"><code>=IF(MDETERM(B2:D4)=0,&quot;逆行列なし&quot;,&quot;逆行列あり&quot;)</code></pre>



<p class="wp-block-paragraph">このようにMDETERM関数を使えば、エラーを出す前に逆行列の有無を判定できます。</p>



<h3 class="wp-block-heading"><span id="toc11">連立方程式の解の有無を判定する</span></h3>



<p class="wp-block-paragraph">連立方程式を行列で表現したとき、係数行列の行列式が0でなければ「ただ1つの解がある」と判定できます。</p>



<p class="wp-block-paragraph">たとえば、次の連立方程式を考えます。</p>



<pre class="wp-block-code"><code>2x + 3y = 8
4x + 1y = 10</code></pre>



<p class="wp-block-paragraph">係数行列は <code>{2,3;4,1}</code> です。MDETERM関数で行列式を求めます。</p>



<pre class="wp-block-code"><code>=MDETERM({2,3;4,1})</code></pre>



<p class="wp-block-paragraph">結果は <strong>-10</strong>（0ではない）なので、この連立方程式にはただ1つの解が存在します。</p>



<p class="wp-block-paragraph">解が存在することを確認できたら、<a href="https://mashukabu.com/excel-function-howto-use-minverse/">MINVERSE関数とMMULT関数を組み合わせて実際の解を求められます</a>。</p>



<pre class="wp-block-code"><code>=MMULT(MINVERSE(B2:C3),E2:E3)</code></pre>



<p class="wp-block-paragraph">行列式が0の場合は「解なし」または「無数の解がある」ことを意味するので、連立方程式の立て方を見直す必要があります。</p>



<h3 class="wp-block-heading"><span id="toc12">計算結果の検算に使う</span></h3>



<p class="wp-block-paragraph">MINVERSE関数で求めた逆行列が正しいかどうかを検算するのにも、MDETERM関数が役立ちます。</p>



<p class="wp-block-paragraph">正方行列Aの行列式と、その逆行列A^(-1)の行列式の間には次の関係があります。</p>



<pre class="wp-block-code"><code>det(A) × det(A^(-1)) = 1</code></pre>



<p class="wp-block-paragraph">つまり、元の行列と逆行列の行列式を掛け合わせた結果が1（またはほぼ1）になれば、逆行列の計算が正しいと確認できます。</p>



<pre class="wp-block-code"><code>=MDETERM(B2:C3) * MDETERM(MINVERSE(B2:C3))</code></pre>



<p class="wp-block-paragraph">結果が1であれば計算は正確です。浮動小数点の関係で <code>0.9999999999999998</code> のような値になることがありますが、これは誤差の範囲内なので問題ありません。</p>



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



<p class="wp-block-paragraph">MDETERM関数で発生しやすいエラーと、その原因・対処法をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#VALUE!</code></td><td>行数と列数が異なる範囲を指定した</td><td>正方行列（2&#215;2、3&#215;3など）になっているか確認する</td></tr><tr><td><code>#VALUE!</code></td><td>配列内に空白セルや文字列が含まれている</td><td>すべてのセルに数値が入力されているか確認する</td></tr><tr><td>結果が <code>1E-16</code> のような極小値</td><td>浮動小数点演算の誤差（本来0になるべき計算）</td><td>ROUND関数で丸める（例: <code>=ROUND(MDETERM(B2:C3),10)</code>）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><code>#VALUE!</code> エラーが出たときは、まず指定した範囲が正方形になっているかを確認してください。たとえば2行3列の範囲を指定していないか、途中に空白や文字が混じっていないかをチェックするのがポイントです。</p>



<p class="wp-block-paragraph">浮動小数点の誤差については補足が必要です。MDETERM関数は約16桁の精度で計算を行うため、本来0になるはずの行列式が <code>1E-16</code>（0.0000000000000001）のような極小の値になることがあります。この値を「0ではない」と判断してしまうと、存在しない逆行列を求めようとしてしまいます。</p>



<p class="wp-block-paragraph">実務では、行列式の絶対値が非常に小さい場合（たとえば <code>1E-10</code> 以下）は「実質的に0」として扱うのが安全です。</p>



<pre class="wp-block-code"><code>=IF(ABS(MDETERM(B2:D4))&lt;1E-10,&quot;特異行列（逆行列なし）&quot;,&quot;逆行列あり&quot;)</code></pre>



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



<p class="wp-block-paragraph">MDETERM関数は、Excelで正方行列の行列式を求めるための関数です。</p>



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



<ul class="wp-block-list"><li>MDETERM関数の引数は「配列」の1つだけ。正方行列を指定する</li><li>行列式が0でなければ逆行列が存在し、0なら逆行列は存在しない（特異行列）</li><li>MINVERSE関数で逆行列を求める前の事前チェックに活用できる</li><li>連立方程式の解の有無の判定にも使える</li><li>浮動小数点誤差で <code>1E-16</code> のような極小値が出ることがあるので、ROUND関数やABS関数で対処する</li></ul>



<p class="wp-block-paragraph">行列式の計算は手作業だと3&#215;3以上で煩雑になりますが、MDETERM関数を使えば正確に素早く結果を得られます。<a href="https://mashukabu.com/excel-function-howto-use-minverse/">MINVERSE関数</a>と合わせて、行列計算の業務効率化にぜひ活用してみてください。</p>



<h3 class="wp-block-heading"><span id="toc15">関連する行列関数との使い分け</span></h3>



<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/excel-function-howto-use-mdeterm/">MDETERM</a></td><td>行列式を求める</td><td>正方行列</td><td>数値（スカラー）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-minverse/">MINVERSE</a></td><td>逆行列を求める</td><td>正方行列</td><td>逆行列（配列）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-mmult/">MMULT</a></td><td>行列の積を求める</td><td>2つの行列</td><td>積の行列（配列）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-transpose/">TRANSPOSE</a></td><td>行と列を入れ替える</td><td>任意の配列</td><td>転置行列（配列）</td></tr></tbody></table></figure>



<ul class="wp-block-list"><li>逆行列が存在するか事前にチェックしたい → <strong>MDETERM</strong></li><li>逆行列を実際に求めたい → <strong>MINVERSE</strong>（事前にMDETERMで確認がおすすめ）</li><li>連立方程式を解きたい → <strong>MINVERSE + MMULT</strong></li><li>行と列を入れ替えたい → <strong>TRANSPOSE</strong></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-mdeterm/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
