<?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>Then  |  独学エクセル塾</title>
	<atom:link href="https://dokugakuexcel.com/tag/then/feed/" rel="self" type="application/rss+xml" />
	<link>https://dokugakuexcel.com</link>
	<description>初心者から中級者までシステム・関数・VBAを伝授します</description>
	<lastBuildDate>Sun, 02 Jul 2023 15:06:01 +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://dokugakuexcel.com/wp-content/uploads/2021/06/cropped-cropped-image-66-1-32x32.jpg</url>
	<title>Then  |  独学エクセル塾</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】If …Thenで条件分岐・判別をする!Elseで異なる処理パターンも可能に</title>
		<link>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-9%e3%80%91if-then%e3%81%a7%e6%9d%a1%e4%bb%b6%e5%88%86%e5%b2%90%e3%83%bb%e5%88%a4%e5%88%a5%e3%82%92%e3%81%99%e3%82%8b%e2%97%8b%e2%97%8b%e3%81%aa%e3%82%89/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590vba%25e7%259f%25a5%25e8%25ad%2598-9%25e3%2580%2591if-then%25e3%2581%25a7%25e6%259d%25a1%25e4%25bb%25b6%25e5%2588%2586%25e5%25b2%2590%25e3%2583%25bb%25e5%2588%25a4%25e5%2588%25a5%25e3%2582%2592%25e3%2581%2599%25e3%2582%258b%25e2%2597%258b%25e2%2597%258b%25e3%2581%25aa%25e3%2582%2589</link>
					<comments>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-9%e3%80%91if-then%e3%81%a7%e6%9d%a1%e4%bb%b6%e5%88%86%e5%b2%90%e3%83%bb%e5%88%a4%e5%88%a5%e3%82%92%e3%81%99%e3%82%8b%e2%97%8b%e2%97%8b%e3%81%aa%e3%82%89/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Sun, 04 Jul 2021 02:13:10 +0000</pubDate>
				<category><![CDATA[条件分岐]]></category>
		<category><![CDATA[マクロVBA]]></category>
		<category><![CDATA[IF]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Then]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=466</guid>

					<description><![CDATA[セルの文字・数値や処理結果によって処理方法を分けたい・変えたいときはないでしょうか。そんな時はIfを使えば可能になります。 さらにElseを使用することで条件にあった処理と異なる処理を分けることもできます。 複雑なシステ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">セルの文字・数値や処理結果によって<strong><span class="marker-under">処理方法を分けたい・変えたい</span></strong>ときはないでしょうか。<br />そんな時はIfを使えば可能になります。</p>



<p class="wp-block-paragraph">さらにElseを使用することで条件にあった処理と異なる処理を分けることもできます。</p>



<p class="wp-block-paragraph">複雑なシステム・計算をするときにはとても役立つと思うので是非参考にしてください。</p>



<p class="wp-block-paragraph">それでは見ていきましょう。</p>



<p class="wp-block-paragraph">&nbsp;</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">■忙しい人向けのコピペ用プログラム</a></li><li><a href="#toc2" tabindex="0">■If Then の構造</a></li><li><a href="#toc3" tabindex="0">■実践</a><ol><li><a href="#toc4" tabindex="0">・通常の使用方法</a></li><li><a href="#toc5" tabindex="0">・Elseを使用せずに実施</a></li><li><a href="#toc6" tabindex="0">・Ifの条件分岐先でさらにIfを使用する</a></li></ol></li><li><a href="#toc7" tabindex="0">■練習問題</a></li><li><a href="#toc8" tabindex="0">&#x2b1b;︎公式</a></li><li><a href="#toc9" tabindex="0">■よくあるエラーと対処法</a><ol><li><a href="#toc10" tabindex="0">・Ifブロックに対応するEnd Ifがありません。</a></li></ol></li><li><a href="#toc11" tabindex="0">■まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">■忙しい人向けのコピペ用プログラム</span></h2>



<p class="wp-block-paragraph"><span class="bold-red">赤字</span>の<span class="bold-red">条件式</span>は指定したい条件を入力して活用してください</p>



<pre class="wp-block-verse">Sub IFによる条件分岐()

If <span class="bold-red">条件式</span> Then
　　'正しい場合の処理
　Else
　　'異なった場合の処理
End If

End Sub</pre>



<h2 class="wp-block-heading"><span id="toc2">■If Then の構造</span></h2>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">まずは構造から見ていきましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><span class="fz-22px"><mark class="has-inline-color has-red-color" style="background-color: rgba(0, 0, 0, 0);">If <span class="bold-red">条件式</span>　Then</mark></span></p>
<p><span class="fz-22px">’正しい場合の処理</span></p>
<p><span class="fz-22px"><mark class="has-inline-color has-indigo-color" style="background-color: rgba(0, 0, 0, 0);">Else</mark></span></p>
<p><span class="fz-22px">’異なった場合の処理</span></p>
<p><span class="fz-22px"><mark class="has-inline-color has-teal-color" style="background-color: rgba(0, 0, 0, 0);">End If</mark></span></p>
</blockquote>



<p class="wp-block-paragraph"><mark class="has-inline-color has-red-color" style="background-color: rgba(0, 0, 0, 0);"><span class="fz-22px"><strong><span class="marker-under">If <span class="bold-red">条件式</span>　Thenの説明</span></strong></span></mark></p>



<p class="wp-block-paragraph">まずIfで条件分岐をすることを宣言します。<br />スペースを開けて条件式を入力します。その後のThenで条件式の完了を宣言します。</p>



<p class="wp-block-paragraph">次の行で正しい場合の処理を入力します。</p>



<p class="wp-block-paragraph"><span class="fz-24px"><mark class="has-inline-color has-indigo-color" style="background-color: rgba(0, 0, 0, 0);"><strong><span class="marker-under">Elseの説明</span></strong></mark></span></p>



<p class="wp-block-paragraph">条件式で異なった場合の処理を分けたい場合は入力します。<br />異なった場合を入力した場合はElseの次の行に処理プログラムを入力します。</p>



<p class="wp-block-paragraph">入力しなけれなEnd Ifまで飛びます。</p>



<p class="wp-block-paragraph"><span class="fz-22px"><strong><mark class="has-inline-color has-teal-color" style="background-color: rgba(0, 0, 0, 0);"><span class="marker-under">End If</span></mark></strong></span></p>



<p class="wp-block-paragraph">End IfでIfの終わりを宣言します。</p>



<h2 class="wp-block-heading"><span id="toc3">■実践</span></h2>



<p class="wp-block-paragraph">&nbsp;</p>



<h3 class="wp-block-heading"><span id="toc4">・通常の使用方法</span></h3>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">それでは実践です。<br />見本で下図のシートを用意しました。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="274" height="237" class="wp-image-467" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-34.png" alt="" /></figure>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">数値がB行にランダムに入っている状態です。<br />その隣のC行に偶数か奇数を判別して入力していきます。</p>



<p class="wp-block-paragraph">偶数・奇数の判別式は今回は詳しく説明しませんが下記の式を判別式にします。<br />Ｂ3の「<span class="bold-blue">56</span>」を<strong><span class="bold-red">偶数・奇数の判断式</span></strong>に直すと…</p>



<p class="wp-block-paragraph"><br /><strong>If <span class="bold-red">Cells(</span><span class="bold-blue">3, 2</span><span class="bold-red">).Value Mod 2 = 0</span> Then</strong></p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">このようになります。</p>



<p class="wp-block-paragraph">「Mod 2」は2で割った際のあまりの数値を算出する機能があります。</p>



<p class="wp-block-paragraph">つまり、B3を2で割って「1」余れば奇数。「0」になれば偶数になる計算式となります。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">ではFor Nextを使用して繰り返し実行するようにプログラミングしましょう。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">&nbsp;</p>



<figure class="wp-block-image size-large"><img decoding="async" width="559" height="350" class="wp-image-468" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-35.png" alt="" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-35.png 559w, https://dokugakuexcel.com/wp-content/uploads/2021/07/image-35-300x188.png 300w" sizes="(max-width: 559px) 100vw, 559px" /></figure>



<p class="wp-block-paragraph">&nbsp;</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>Sub 偶数or奇数()</p>
<p>Dim A As Long</p>
<p>For A = 3 To 10 Step 1</p>
<p>　If Cells(A, 2).Value Mod 2 = 0 Then<br />　　Cells(A, 3) = &#8220;偶数&#8221;</p>
<p>　Else<br />　　Cells(A, 3) = &#8220;奇数&#8221;</p>
<p>　End If</p>
<p>Next A</p>
<p>End Sub</p>
</blockquote>



<p class="wp-block-paragraph">このようになりました。<br />では実行してみましょう。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<figure class="wp-block-image size-large"><img decoding="async" width="280" height="237" class="wp-image-469" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-36.png" alt="" /></figure>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">正しく実行できてますね。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<h3 class="wp-block-heading"><span id="toc5">・Elseを使用せずに実施</span></h3>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">先ほどは偶数であれば「偶数」と出力、奇数であれば「奇数」と出力しましたが</p>



<p class="wp-block-paragraph">場合によっては偶数の時のみ「偶数」と1つのパターンのみでいい時もあると思います。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">その際は<strong><span class="marker-under">Elseを省略することも可能</span></strong>です。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">先ほどのプログラムと比較しましょう。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis: 100%;">
<pre class="wp-block-preformatted">If Cells(A, 2).Value Mod 2 = 0 Then
Cells(A, 3) = "偶数"
Else
Cells(A, 3) = "奇数"
End If</pre>



<p class="wp-block-paragraph">&nbsp;</p>
</div>
</div>



<p class="wp-block-paragraph">上記のプログラムを偶数のみ「偶数」と出力するようにしてみましょう。</p>



<p class="wp-block-paragraph">Elseを取り除いたプログラムはこのようになります。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<pre class="wp-block-preformatted">If Cells(A, 2).Value Mod 2 = 0 Then
Cells(A, 3) = "偶数"
End If</pre>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">これで<strong><span class="marker-under">１パターンのみの出力が可能</span></strong>になりました。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<h3 class="wp-block-heading"><span id="toc6">・Ifの条件分岐先でさらにIfを使用する</span></h3>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">If …Thenは条件分岐先でも使用することができ、<strong><span class="marker-under">複数の条件分岐が可能</span></strong>です。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">例えば先ほどの「偶数」「奇数」の２パターンの条件分岐を</p>



<p class="wp-block-paragraph">「５０以上の偶数」 ・ 「５０以下の偶数」 ・「５０以上の奇数」・ 「５０以下の奇数」</p>



<p class="wp-block-paragraph">の４パターンの出力にしてみたいと思います。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">プログラムはこのようになります。 </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>Sub 偶数or奇数()</p>
<p>Dim A As Long</p>
<p>For A = 3 To 10 Step 1</p>
<p>If Cells(A, 2).Value Mod 2 = 0 Then<br />　If Cells(A, 2).Value &gt;= 50 Then<br />　　Cells(A, 3) = &#8220;50以上の偶数&#8221;<br />　Else<br />　　Cells(A, 3) = &#8220;50以下の偶数&#8221;<br />　End If</p>
<p>Else</p>
<p>If Cells(A, 2).Value &gt;= 50 Then<br />　　Cells(A, 3) = &#8220;50以上の奇数&#8221;<br />　Else<br />　　Cells(A, 3) = &#8220;50以下の奇数&#8221;<br />　End If</p>
<p>End If</p>
<p>Next A</p>
<p>End Sub</p>
</blockquote>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">実行した結果はこちらです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="329" height="294" class="wp-image-1263" src="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-209.png" alt="" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/08/image-209.png 329w, https://dokugakuexcel.com/wp-content/uploads/2021/08/image-209-300x268.png 300w" sizes="(max-width: 329px) 100vw, 329px" /></figure>



<p class="wp-block-paragraph">このように４パターンの出力が可能になりました。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">しかしプログラムを見てわかる通り、複雑になってしまいます。</p>



<p class="wp-block-paragraph">把握できる範囲で使用してみてください。</p>
<h2><span id="toc7">■練習問題</span></h2>
<p>練習問題も別の記事でまとめているので是非参考にしてみてください！</p>
<div class="alert-box common-icon-box"><a href="https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e7%b7%b4%e7%bf%92%e5%95%8f%e9%a1%8c8%e3%80%91%e5%81%b6%e6%95%b0%e3%83%bb%e5%8f%88%e3%81%af%e5%a5%87%e6%95%b0%e3%81%ae%e5%80%8b%e6%95%b0%e3%82%92%e8%a8%88/">【マクロVBA練習問題8】偶数・又は奇数の個数を計算・判別し、その結果を表示する ► 独学エクセル塾 (dokugakuexcel.com)</a></div>



<h2 class="wp-block-heading"><span id="toc8">&#x2b1b;︎公式</span></h2>



<p class="wp-block-paragraph">わかりやすいように説明したため公式と使用する語句が異なりますが<br />マイクロソフト公式の説明については下記のリンクを参照してください☟</p>



<p class="wp-block-paragraph"><a href="https://learn.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/ifthenelse-statement">If&#8230;Then&#8230;Else ステートメント (VBA) | Microsoft Learn</a></p>



<h2 class="wp-block-heading"><span id="toc9">■よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">では<strong><span class="marker-under">If …Thenを使用して発生するエラーとそれに対する対処法</span></strong>を説明します。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<h3 class="wp-block-heading"><span id="toc10">・Ifブロックに対応するEnd Ifがありません。</span></h3>



<p class="wp-block-paragraph">このエラーは単純ですがIfに対してEnd Ifがないのが原因です。</p>



<p class="wp-block-paragraph">Ifを一つ使用している場合はこのようなエラーになることは少ないと思いますが</p>



<p class="wp-block-paragraph">何度もIfを使用している場合はプログラムの流れが把握できなくなり、</p>



<p class="wp-block-paragraph">入力し忘れがあると思います。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">原則、<strong><span class="marker-under-red">Ifの使用回数分、End Ifが必要</span></strong>ということを心掛けてください。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">&nbsp;</p>



<h2 class="wp-block-heading"><span id="toc11">■まとめ</span></h2>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">いかがだったでしょうか。<br />判断が必要なシステムには必要な知識ですよね。</p>



<p class="wp-block-paragraph">End Ifは忘れずにいれてくださいね！</p>



<p class="wp-block-paragraph">それでは次回の記事でお会いしましょう。</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">次回の記事はこちらから☟</p>



<p class="wp-block-paragraph"><a href="https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-10%e3%80%91for-eath-%e3%81%a7%e9%85%8d%e5%88%97%e3%83%bb%e3%82%b3%e3%83%ac%e3%82%af%e3%82%b7%e3%83%a7%e3%83%b3%e5%86%85%e3%81%a7%e7%b9%b0%e3%82%8a%e8%bf%94%e3%81%97/">【VBA知識 10】For Eath で配列・コレクション内で繰り返し・ループ処理をする。Excel ► 独学エクセル塾 (dokugakuexcel.com)</a></p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="wp-block-paragraph">&nbsp;</p>



<p class="has-text-align-center wp-block-paragraph">このサイトでは独学でエクセルの技術を磨くことができます。基本操作やVBA、関数を随時更新中です。</p>



<p class="has-text-align-center wp-block-paragraph">VBAではストーリー形式で説明していますが途中からでもわかるようにしています。ぜひ参考にしてみてください。</p>



<p class="has-text-align-center wp-block-paragraph">いつかはエクセルの教科書のようなサイトを目指してます。<br />コメントで知りたいことや悩みなど記入していただければお答えしていきます。<br />ぜひ、ほかの記事もご覧ください。皆様の参考になれれば幸いです！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-9%e3%80%91if-then%e3%81%a7%e6%9d%a1%e4%bb%b6%e5%88%86%e5%b2%90%e3%83%bb%e5%88%a4%e5%88%a5%e3%82%92%e3%81%99%e3%82%8b%e2%97%8b%e2%97%8b%e3%81%aa%e3%82%89/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">466</post-id>	</item>
	</channel>
</rss>
