<?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>ERROR  |  独学エクセル塾</title>
	<atom:link href="https://dokugakuexcel.com/tag/error/feed/" rel="self" type="application/rss+xml" />
	<link>https://dokugakuexcel.com</link>
	<description>初心者から中級者までシステム・関数・VBAを伝授します</description>
	<lastBuildDate>Mon, 17 Oct 2022 13:29:14 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://dokugakuexcel.com/wp-content/uploads/2021/06/cropped-cropped-image-66-1-32x32.jpg</url>
	<title>ERROR  |  独学エクセル塾</title>
	<link>https://dokugakuexcel.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">194648711</site>	<item>
		<title>【マクロVBAのエラー対策】エラーが発生したら指定行まで移動！終了までできるエラー処理方法について</title>
		<link>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%81%ae%e3%82%a8%e3%83%a9%e3%83%bc%e5%af%be%e7%ad%96%e3%80%91%e3%82%a8%e3%83%a9%e3%83%bc%e3%81%ab%e8%b2%a0%e3%81%91%e3%81%aa%e3%81%84%e3%83%97%e3%83%ad/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590%25e3%2583%259e%25e3%2582%25af%25e3%2583%25advba%25e3%2581%25ae%25e3%2582%25a8%25e3%2583%25a9%25e3%2583%25bc%25e5%25af%25be%25e7%25ad%2596%25e3%2580%2591%25e3%2582%25a8%25e3%2583%25a9%25e3%2583%25bc%25e3%2581%25ab%25e8%25b2%25a0%25e3%2581%2591%25e3%2581%25aa%25e3%2581%2584%25e3%2583%2597%25e3%2583%25ad</link>
					<comments>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%81%ae%e3%82%a8%e3%83%a9%e3%83%bc%e5%af%be%e7%ad%96%e3%80%91%e3%82%a8%e3%83%a9%e3%83%bc%e3%81%ab%e8%b2%a0%e3%81%91%e3%81%aa%e3%81%84%e3%83%97%e3%83%ad/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Tue, 26 Oct 2021 11:33:30 +0000</pubDate>
				<category><![CDATA[エラー対策]]></category>
		<category><![CDATA[マクロVBA応用・便利技]]></category>
		<category><![CDATA[ERROR]]></category>
		<category><![CDATA[エラー]]></category>
		<category><![CDATA[異常]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=1815</guid>

					<description><![CDATA[エクセルのマクロVBAのプログラムを作ったことがある方は誰もが経験があるエラーですが、皆さんも悩んでいるのではないでしょうか。 プログラムを作った人は発生したエラーについて理解・把握できますが作ってない方はエラーが発生し [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>エクセルのマクロVBAのプログラムを作ったことがある方は誰もが経験がある<br>エラーですが、皆さんも悩んでいるのではないでしょうか。</p>



<p>プログラムを作った人は発生したエラーについて理解・把握できますが<br>作ってない方はエラーが発生したらすぐに理解するのは難しいです。</p>



<p>さらにVBAを触ったことがない人がシステムを利用してエラーが出ると<br>何を押していいかわかりません。</p>



<p>そのためにもプログラムを作成する方はエラーに対応したプログラムを<br>作成する能力を求められます。</p>



<p>ぜひ、<strong><span class="marker-under">エラーに強いプログラムを作成</span></strong>できるようにしてみてください。</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">■マクロVBAで発生するエラーとは</a></li><li><a href="#toc2" tabindex="0">■エラーの対応方法</a><ol><li><a href="#toc3" tabindex="0">・①対象範囲内でエラーが起きたら指定位置へ飛ぶ</a></li><li><a href="#toc4" tabindex="0">・②IFを使用して異常値を検出して指定位置に飛ぶ</a></li><li><a href="#toc5" tabindex="0">・③入力規則で入力データを制限する</a></li></ol></li><li><a href="#toc6" tabindex="0">&#x2b1b;︎公式の説明</a></li><li><a href="#toc7" tabindex="0">■まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">■マクロVBAで発生するエラーとは</span></h2>



<p>まず発生するエラーについて見てみましょう。<br>下図をご覧ください。</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="360" height="182" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-64.png" alt="" class="wp-image-1816" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-64.png 360w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-64-300x152.png 300w" sizes="(max-width: 360px) 100vw, 360px" /></figure>



<p>このような異常はプログラムを作ったことがある方は見たことがあるのではないでしょうか。<br>ちなみに<strong><span class="marker-under">終了を押せばプログラムは強制終了</span></strong>します。</p>



<p><strong><span class="marker-under">デバッグを押せばエラーの原因のプログラムの位置で止まってくれます</span></strong>。<br>VBAを知らない方はデバッグを押すと、みたことのない画面が出るため困ってしまいます。</p>



<p><strong><span class="marker-under">ヘルプはマイクロソフト公式のヘルプに飛んでくれます</span></strong>。</p>



<p>今回の目的はこの画面が出ないようにプログラミングしていきます。</p>



<h2 class="wp-block-heading"><span id="toc2">■エラーの対応方法</span></h2>



<p>今回は下図のようなシステムを見本で作成しました。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="777" height="262" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-65.png" alt="" class="wp-image-1817" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-65.png 777w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-65-300x101.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-65-768x259.png 768w" sizes="(max-width: 777px) 100vw, 777px" /></figure>



<p>システムとして、身長・体重を打ち込んで更新を押すと<br>8行以降に<span class="marker-under-red">データを蓄積していく</span>シートを用意しました。その際にBMIも算出します。</p>



<p>プログラムも見本で載せておきます</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub データ集計()</p><p>Dim EndRow As Long<br>Dim Height As Long &#8216;身長<br>Dim Weight As Long &#8216;体重</p><p>EndRow = Cells(7, 2).End(xlDown).Row + 1</p><p>Height = Cells(3, 2)<br>Weight = Cells(3, 3)</p><p>Cells(EndRow, 2) = Height<br>Cells(EndRow, 3) = Weight<br>Cells(EndRow, 4) = Weight / (Height / 100) ^ 2</p><p>Range(&#8220;B3:C3&#8221;).ClearContents</p><p>End Sub</p></blockquote>



<p>では、このプログラムを元に説明していきます。</p>



<p></p>



<h3 class="wp-block-heading"><span id="toc3">・①対象範囲内でエラーが起きたら指定位置へ飛ぶ</span></h3>



<p>まず、<strong><span class="marker-under-red">エラー発生時に指定位置に飛ぶ方法</span></strong>について紹介します。<br>この方法はエラーの根本的な解決方法にはなってませんが<br>エラー画面が発生しない1番手っ取り早い方法です。</p>



<p>プログラム構成はこのようになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><span class="bold-red">On Error Goto <span class="bold-blue">任意ラベル</span></span><br>　　・<br>　　・<br>　　・<br>通常プログラム<br>　　・<br>　　・<br>　　・<br>Exit Sub</p><p><span class="bold-blue">任意ラベル</span>：</p><p><span class="bold-green">エラー時の処理</span></p><p>End Sub</p></blockquote>



<p>つまり</p>



<p>「<span class="bold-red">On Error Goto<span class="bold-blue"> 任意ラベル</span></span>」から「<span class="bold-blue">任意ラベル</span>：」の範囲内で<br>異常があった場合、<span class="bold-green">エラー時の処理</span>まで飛んでくれます。</p>



<p>では先ほどのプログラムに織り込んでみましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub データ集計①織り込み()</p><p>Dim EndRow As Long<br>Dim Height As Long &#8216;身長<br>Dim Weight As Long &#8216;体重</p><p><span class="bold-red">On Error GoTo <span class="bold-blue">エラー1</span></span></p><p>EndRow = Cells(7, 2).End(xlDown).Row + 1</p><p>Height = Cells(3, 2)<br>Weight = Cells(3, 3)</p><p>Cells(EndRow, 2) = Height<br>Cells(EndRow, 3) = Weight<br>Cells(EndRow, 4) = Weight / (Height / 100) ^ 2</p><p>Range(&#8220;B3:C3&#8221;).ClearContents</p><p>Exit Sub</p><p><span class="bold-blue">エラー1</span>:</p><p><span class="bold-green">MsgBox (&#8220;誤った数値が入力されています&#8221;)</span></p><p>End Sub</p></blockquote>



<p>図解するとこのようになります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="655" height="379" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-66.png" alt="" class="wp-image-1818" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-66.png 655w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-66-300x174.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-66-330x190.png 330w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-66-120x68.png 120w" sizes="(max-width: 655px) 100vw, 655px" /></figure>



<p>では実際にエラーが出るように更新してみましょう。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="366" height="253" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-67.png" alt="" class="wp-image-1819" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-67.png 366w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-67-300x207.png 300w" sizes="(max-width: 366px) 100vw, 366px" /></figure>



<p><strong><span class="marker-under-blue">身長に間違えて「A」</span></strong>を打ち込んだとします。<br>通常は身長を「Cells(EndRow, 2) = Height」で変数「Height」に格納するのですが<br><strong><span class="marker-under-blue">変数「Height」の型は「Long」なので文字は格納できません</span></strong>。</p>



<p>なので通常は下図のような異常が出ます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="401" height="198" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-68.png" alt="" class="wp-image-1820" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-68.png 401w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-68-300x148.png 300w" sizes="(max-width: 401px) 100vw, 401px" /></figure>



<p>では改善したプログラムを走らせてみます。<br>結果はこのようになります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="310" height="216" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-69.png" alt="" class="wp-image-1821" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-69.png 310w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-69-300x209.png 300w" sizes="(max-width: 310px) 100vw, 310px" /></figure>



<p>エラー処理にプログラムが飛んで、メッセージボックスの<br>「誤った数値が入力されています」が表示されました。<br>この後は<strong>「OK」を押せばプログラムは終わってくれます</strong>。</p>



<p>VBAのエラーを表示させたくない場合はプログラムの先頭に「<span class="bold-red">On Error GoTo　<span class="bold-blue">任意ラベル</span></span>」<br>最後に「<span class="bold-blue">任意ラベル</span>：」を置いて<br>そのあとに「<span class="bold-green">MsgBox (&#8220;エラーになりました。見直してください&#8221;）</span>」を入れれば<br>とりあえずVBAの異常は無くなり、メッセージでの出力にすることができました。</p>



<h3 class="wp-block-heading"><span id="toc4">・②IFを使用して異常値を検出して指定位置に飛ぶ</span></h3>



<p>今度はIFを使用して<strong><span class="marker-under">異常値を検出し、異常処理行まで飛んでみましょう</span></strong>。<br>この方法は先ほどの型が違うなどのエラーは適応外ですが<br><strong><span class="marker-under">エラーの根本を検出</span></strong>できます。</p>



<p>では先ほどの見本を元に進めていきます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="363" height="258" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-70.png" alt="" class="wp-image-1822" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-70.png 363w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-70-300x213.png 300w" sizes="(max-width: 363px) 100vw, 363px" /></figure>



<p>「B3」の身長を見てみましょう。<br>間違えて「0」を余分につけて「1720」になっています。</p>



<p>このまま更新ボタンを押すとそのまま計算・集計してしまい、正確な計算ができません。<br>ではIFを使用してエラーを防止してみましょう。</p>



<p>条件として<strong><span class="marker-under-red">身長の範囲を「120～200」</span></strong>までとします。</p>



<p>ではIFを使用して120～200以外は別の処理を行いたいと思います。<br>プログラムはこのようになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>If Height &lt; <strong><span class="marker-under-red">120</span></strong> Or Height &gt;<strong><span class="marker-under-red"> 200</span></strong> Then<br><span class="bold-green">MsgBox (&#8220;身長は120から200までで入力してください&#8221;)</span><br>Exit Sub<br>End If</p></blockquote>



<p>Heightは身長データを格納している変数とします。<br>IFを使い、Heightが120～200の範囲以外だと 「<span style="color: rgb(62, 179, 112); font-weight: bold;">身長は120から200までで入力してください</span> 」</p>



<p>とメッセージボックスを表示してExit Subでプログラムを終わらせます。<br>IFの詳しい使用方法は下記リンクを参照してみてください。☟</p>



<p><a href="https://dokugakuexcel.com/%e3%80%90if%e9%96%a2%e6%95%b0%e3%80%91%e3%82%a8%e3%82%af%e3%82%bb%e3%83%ab%e3%81%a7%e2%97%8b%e2%97%8b%e3%81%a0%e3%81%a3%e3%81%9f%e3%82%89%e2%96%b3%e2%96%b3%e3%82%92%e8%a1%a8%e7%a4%ba%e3%81%99%e3%82%8b/">【IF関数】エクセルで○○だったら△△を表示する～条件分岐を身に着ける～ ► 独学エクセル塾 (dokugakuexcel.com)</a></p>



<p>ではプログラムに組み込んでみましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub データ集計②織り込み()</p><p>Dim EndRow As Long<br>Dim Height As Long &#8216;身長<br>Dim Weight As Long &#8216;体重</p><p>EndRow = Cells(7, 2).End(xlDown).Row + 1</p><p>Height = Cells(3, 2)<br>Weight = Cells(3, 3)</p><p>If Height &lt; <strong><span class="marker-under-red">120 </span></strong>Or Height &gt; <strong><span class="marker-under-red">200</span></strong> Then<br><span class="bold-green">MsgBox (&#8220;身長は120から200までで入力してください&#8221;)</span><br>Exit Sub<br>End If</p><p>Cells(EndRow, 2) = Height<br>Cells(EndRow, 3) = Weight<br>Cells(EndRow, 4) = Weight / (Height / 100) ^ 2</p><p>Range(&#8220;B3:C3&#8221;).ClearContents</p><p>End Sub</p></blockquote>



<p>実行した結果はこのようになります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="338" height="212" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-71.png" alt="" class="wp-image-1823" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-71.png 338w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-71-300x188.png 300w" sizes="(max-width: 338px) 100vw, 338px" /></figure>



<p>IFで指定範囲外の数値を検出して</p>



<p>設定したメッセージでフィードバックが可能になりました。</p>



<h3 class="wp-block-heading"><span id="toc5">・③入力規則で入力データを制限する</span></h3>



<p>最後にVBAプログラムでの対処ではありませんが<br>エクセルの機能の<strong><span class="marker-under-red">入力規則を用いたエラーの回避</span></strong>を紹介します。</p>



<p>こちらはエラーの根本を解決する方法になっており、<br><strong><span class="marker-under-red">エラーになる入力をさせない方法</span></strong>です。</p>



<p>では先ほどと同様に身長を「120～200」で制限してみましょう。<br>入力制限対象を選択して<strong><span class="marker-under-blue">【データ】</span></strong>から<strong><span class="marker-under-blue">【データの入力規則】</span></strong>を選択してください。</p>



<figure class="wp-block-image"><img decoding="async" src="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-10.png" alt=""/></figure>



<p>ここでは詳しく説明はしませんが<br>入力値の種類を「整数」にして最小値を「120」、最大限を「200」にします。<br>データを「次の値の間」にしました。</p>



<p>詳しい入力規則については下記リンクを参照してみてください☟</p>



<p><a href="https://dokugakuexcel.com/%e3%80%90%e3%83%aa%e3%82%b9%e3%83%88%e3%81%ae%e4%bd%9c%e6%88%90%e3%81%ab%e4%be%bf%e5%88%a9%e3%80%91%e3%83%87%e3%83%bc%e3%82%bf%e3%81%ae%e5%85%a5%e5%8a%9b%e8%a6%8f%e5%89%87%e3%81%ae%e8%a8%ad%e5%ae%9a/">【リストの作成に便利】データの入力規則の設定・制限から解除まで ► 独学エクセル塾 (dokugakuexcel.com)</a></p>



<figure class="wp-block-image size-full"><img decoding="async" width="488" height="366" src="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-72.png" alt="" class="wp-image-1824" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/10/image-72.png 488w, https://dokugakuexcel.com/wp-content/uploads/2021/10/image-72-300x225.png 300w" sizes="(max-width: 488px) 100vw, 488px" /></figure>



<p>これにより入力は「120～200」の整数のみ可能になります。<br>「A」などといった文字も制限されるのでとても便利です。</p>



<p></p>



<h2 class="wp-block-heading"><span id="toc6">&#x2b1b;︎公式の説明</span></h2>



<p>わかりやすいように説明したため公式と使用する語句が異なりますが<br>マイクロソフト公式の説明については下記のリンクを参照してください。☟</p>



<p><a href="https://learn.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/on-error-statement">On Error ステートメント (VBA) | Microsoft Learn</a></p>



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



<p>いかがだったでしょうか。</p>



<p>今回は対策を①から③の<br>①対象範囲内でエラーが起きたら指定位置へ飛ぶ<br>②IFを使用して異常値を検出して指定位置に飛ぶ<br>③入力規則で入力データを制限する<br>で紹介しました。</p>



<p>①～③の知識は、すべてエラーを防止するためには大切なのですが<br>操作する人が複数であればあるほど自分の想定を超えた処理を行い、<br>エラーになってしまいます。<br>そのためにも①の方法は入れておけば汎用性は上がると思います</p>



<p>ぜひ、①から③を織り込んでエラーに強いプログラムを作成してみてください。</p>



<p>それでは次回の記事でお会いしましょう。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%81%ae%e3%82%a8%e3%83%a9%e3%83%bc%e5%af%be%e7%ad%96%e3%80%91%e3%82%a8%e3%83%a9%e3%83%bc%e3%81%ab%e8%b2%a0%e3%81%91%e3%81%aa%e3%81%84%e3%83%97%e3%83%ad/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1815</post-id>	</item>
		<item>
		<title>【IFERROR関数】エラー時の対応について。エラー時の処理の分岐・出力変更の方法</title>
		<link>https://dokugakuexcel.com/%e3%80%90iferror%e9%96%a2%e6%95%b0%e3%80%91%e3%82%a8%e3%82%af%e3%82%bb%e3%83%ab%e3%81%a7%e3%81%ae%e3%82%a8%e3%83%a9%e3%83%bc%e6%99%82%e3%81%ae%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590iferror%25e9%2596%25a2%25e6%2595%25b0%25e3%2580%2591%25e3%2582%25a8%25e3%2582%25af%25e3%2582%25bb%25e3%2583%25ab%25e3%2581%25a7%25e3%2581%25ae%25e3%2582%25a8%25e3%2583%25a9%25e3%2583%25bc%25e6%2599%2582%25e3%2581%25ae%25e5%25af%25be%25e5%25bf%259c%25e3%2581%25ab%25e3%2581%25a4%25e3%2581%2584%25e3%2581%25a6</link>
					<comments>https://dokugakuexcel.com/%e3%80%90iferror%e9%96%a2%e6%95%b0%e3%80%91%e3%82%a8%e3%82%af%e3%82%bb%e3%83%ab%e3%81%a7%e3%81%ae%e3%82%a8%e3%83%a9%e3%83%bc%e6%99%82%e3%81%ae%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Wed, 23 Jun 2021 05:47:01 +0000</pubDate>
				<category><![CDATA[関数]]></category>
		<category><![CDATA[ERROR]]></category>
		<category><![CDATA[エラー]]></category>
		<category><![CDATA[IFERROR]]></category>
		<category><![CDATA[IFERROR関数]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=144</guid>

					<description><![CDATA[エクセルを使用していてエラーになった、という方は多いはず…そうなったときの対処法について今回紹介する関数は役立つと思います。 今回使用する関数はIFERROR関数です。IF関数の応用関数になっています。 それでは見ていき [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>エクセルを使用していてエラーになった、という方は多いはず…<br>そうなったときの対処法について今回紹介する関数は役立つと思います。</p>



<p></p>



<p>今回使用する関数はIFERROR関数です。IF関数の応用関数になっています。</p>



<p></p>



<p>それでは見ていきましょう。</p>



<p></p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">■関数の仕組み</a></li><li><a href="#toc2" tabindex="0">■ IFERROR関数で,エラー時の対応をする</a><ol><li><a href="#toc3" tabindex="0">・通常のIFERROR関数の実践</a></li><li><a href="#toc4" tabindex="0">・ほかの関数との併用</a></li></ol></li><li><a href="#toc5" tabindex="0">■公式の説明</a></li><li><a href="#toc6" tabindex="0">■練習問題</a><ol><li><a href="#toc7" tabindex="0">・練習問題①</a></li><li><a href="#toc8" tabindex="0">・練習問題②</a></li></ol></li><li><a href="#toc9" tabindex="0">■まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">■関数の仕組み</span></h2>



<figure class="wp-block-pullquote has-border-color" style="border-color:#000000"><blockquote><p><strong>=IFERROR(<span class="has-inline-color has-vivid-red-color">通常時</span>,<span class="has-inline-color has-vivid-cyan-blue-color">エラー時</span>)</strong></p></blockquote></figure>



<p></p>



<h2 class="wp-block-heading"><span id="toc2">■ IFERROR関数で,エラー時の対応をする</span></h2>



<p></p>



<h3 class="wp-block-heading"><span id="toc3">・通常のIFERROR関数の実践</span></h3>



<p>下図の見本をもとに進めていきましょう。</p>



<p>値段と個数から自動で総額を算出してくれるようなシートになっています。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="833" height="143" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-79.png" alt="" class="wp-image-145" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-79.png 833w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-79-300x52.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-79-768x132.png 768w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-79-350x60.png 350w" sizes="(max-width: 833px) 100vw, 833px" /></figure>



<p>現在は20円*50個で1000円と出力しています。</p>



<p>ここで値段が不明になったとします。<br>実際値段に<strong><span class="marker-under-red">「不明」</span></strong>と打ち込んでみましょう。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="393" height="141" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-80.png" alt="" class="wp-image-146" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-80.png 393w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-80-300x108.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-80-167x60.png 167w" sizes="(max-width: 393px) 100vw, 393px" /></figure>



<p>総額は<strong><span class="marker-under-red">エラー</span></strong>になってしまいました。</p>



<p></p>



<p>エラーの原因として<br>現在「不明」*50個という計算です。当然文字に<strong><span class="marker-under-red">数値をかけることができませんからエラー</span></strong>となるのです。</p>



<p>なのでこの値段の関数にエラーが起きたら<strong><span class="marker-under-blue">「？」</span></strong>を表示させるようにしていきます。</p>



<p></p>



<p>ここで使用するのがIFERROR関数。<br>仕組みとしては</p>



<p class="has-medium-font-size"><span style="text-decoration: underline;"><strong>=IFERROR(<span class="bold-red">通常時</span>,<span class="bold-blue">エラー時</span>)</strong></span></p>



<p>のような流れですね。</p>



<p>通常時とはエラーが何もない時の表示方法でエラー時が文字通りエラーの時の</p>



<p>表示方法が選択できます。</p>



<p></p>



<p>なので数式に直すとこのようになります。</p>



<p class="has-medium-font-size"><strong><span style="text-decoration: underline;">=IFERROR(<span class="bold-red">C4*E4</span>,<span class="bold-blue">&#8220;?&#8221;</span>)</span></strong></p>



<p>では実際に関数を入れてみましょう。下図のようになります。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="900" height="144" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-81.png" alt="" class="wp-image-147" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-81.png 900w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-81-300x48.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-81-768x123.png 768w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-81-375x60.png 375w" sizes="(max-width: 900px) 100vw, 900px" /></figure>



<p>うまくいきましたね。ちなみに通常時もちゃんと計算してくれています。</p>



<p>エラーが発生する可能性のあるセルにはIFERROR関数を入れて、エラーの連鎖を止めてみてください。</p>



<p></p>



<h3 class="wp-block-heading"><span id="toc4">・ほかの関数との併用</span></h3>



<p></p>



<p>先ほどはIFERROR関数のみの使用でしたが</p>



<p>ほかの関数の併用も可能になっています。</p>



<p></p>



<p>下図のようなデータを用意しました。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="321" height="240" src="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-90.png" alt="" class="wp-image-1115" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-90.png 321w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-90-300x224.png 300w" sizes="(max-width: 321px) 100vw, 321px" /></figure>



<p>行いたいこととしてAさんのテストの平均値を求めることとします。</p>



<p>通常であれば<strong><span class="marker-under-red">「=AVERAGE(C3:C7)」</span></strong>をC8に打ち込んで平均を求めます。</p>



<p></p>



<p>では理科のテストが手違いでエラーになったとします。</p>



<p>すると平均値を算出するC8はこのようになります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="324" height="242" src="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-91.png" alt="" class="wp-image-1116" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-91.png 324w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-91-300x224.png 300w" sizes="(max-width: 324px) 100vw, 324px" /></figure>



<p>対象範囲にエラーがあるため算出結果もエラーになります。</p>



<p>ではIFERROR関数を使用してエラー時には「エラーあり」と表示しましょう。</p>



<p></p>



<p>式を振り返ってみましょう。</p>



<p> <span style="text-decoration: underline;"><strong>IFERROR(<span class="bold-red">通常時</span>,<span class="bold-blue">エラー時</span>)</strong></span></p>



<p></p>



<p>こちらに当てはめると下記のようになります。</p>



<p>  <span style="text-decoration: underline;"><strong>IFERROR(<span class="bold-red"> <strong><span class="marker-under-red">AVERAGE(C3:C7)</span></strong> </span>,<span class="bold-blue"> ”エラーあり </span></strong></span>”<span style="text-decoration: underline;"><strong>)</strong></span> </p>



<p>通常時にはAVERAGE関数を使用していますね。</p>



<p>ではエラー有と無状態で結果を見てみましょう。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="533" height="207" src="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-92.png" alt="" class="wp-image-1117" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-92.png 533w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-92-300x117.png 300w" sizes="(max-width: 533px) 100vw, 533px" /></figure>



<p>うまく機能していますね。</p>



<p></p>



<p>さらにエラー時でも関数を使用することができるので</p>



<p>場面によって使い分けてみてください。</p>



<p></p>



<h2 class="wp-block-heading"><span id="toc5">■公式の説明</span></h2>



<p>わかりやすいように説明したため公式と使用する語句が異なりますが</p>



<p>マイクロソフト公式の説明については下記のリンクを参照してください。☟</p>



<p><a href="https://support.microsoft.com/ja-jp/office/max-%E9%96%A2%E6%95%B0-e0012414-9ac8-4b34-9a47-73e662c08098"></a><a href="https://support.microsoft.com/ja-jp/office/iferror-%E9%96%A2%E6%95%B0-c526fd07-caeb-47b8-8bb6-63f3e417f611">IFERROR 関数 &#8211; Office サポート (microsoft.com)</a></p>



<p></p>



<h2 class="wp-block-heading"><span id="toc6">■練習問題</span></h2>



<p>では練習問題でIFERROR関数を身に着けてみてください。</p>



<p></p>



<h3 class="wp-block-heading"><span id="toc7">・練習問題①</span></h3>



<p>下図をご覧ください。数値1と数値2を足した値をF3に表示してみましょう。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="482" height="122" src="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-93.png" alt="" class="wp-image-1118" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-93.png 482w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-93-300x76.png 300w" sizes="(max-width: 482px) 100vw, 482px" /></figure>



<p>数値1と数値2にエラーが生じれば合計に「エラーあり」と表示するようにしてみます。</p>



<p></p>



<p>答え：=IFERROR(B3+D3,&#8221;エラーあり&#8221;)</p>



<p></p>



<h3 class="wp-block-heading"><span id="toc8">・練習問題②</span></h3>



<p>では他の関数も交えて練習してみましょう。下図をご覧ください。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="432" height="241" src="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-95.png" alt="" class="wp-image-1120" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-95.png 432w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-95-300x167.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-95-120x68.png 120w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-95-160x90.png 160w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-95-320x180.png 320w" sizes="(max-width: 432px) 100vw, 432px" /></figure>



<p>数値が1から5まであり、通常時は「最大値」。</p>



<p>エラーがあれば「 数値を確認してください 」と表示してみましょう。。</p>



<p>結果の出力はC8に行うこととします。</p>



<p></p>



<p>答え：=IFERROR(MAX(C3:C7),&#8221;数値を確認してください&#8221;)</p>



<p></p>



<p></p>



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



<p>いかがだったでしょうか。<br>関数を使用するうえでエラーは誰もが頭を悩ませる問題です。<br>ここでエラー時の対応をフォローできていれば、良いファイルになること間違いなしです。</p>



<p>IF関数の流れを一通り理解したことで<br>次回からIF関数+○○関数といった、複合型の関数について説明できればと思います。</p>



<p></p>



<p>合計ではSUMIF関数、平均ではAVERAGEIF関数などありますね。</p>



<p></p>



<p>それでは次回の記事でお会いしましょう。</p>



<p></p>



<p class="has-text-align-center">このサイトでは独学でエクセルの技術を磨くことができます。基本操作やVBA、関数を随時更新中です。</p>



<p class="has-text-align-center">関数の使い方や効果を、実際のエクセルを使用してわかりやすくしています。</p>



<p class="has-text-align-center">いつかはエクセルの教科書のようなサイトを目指してます。<br>コメントで知りたいことや悩みなど記入していただければお答えしていきます。<br>ぜひ、ほかの記事もご覧ください。皆様の参考になれれば幸いです！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://dokugakuexcel.com/%e3%80%90iferror%e9%96%a2%e6%95%b0%e3%80%91%e3%82%a8%e3%82%af%e3%82%bb%e3%83%ab%e3%81%a7%e3%81%ae%e3%82%a8%e3%83%a9%e3%83%bc%e6%99%82%e3%81%ae%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">144</post-id>	</item>
	</channel>
</rss>
