<?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>文字列の長さ  |  独学エクセル塾</title>
	<atom:link href="https://dokugakuexcel.com/tag/%e6%96%87%e5%ad%97%e5%88%97%e3%81%ae%e9%95%b7%e3%81%95/feed/" rel="self" type="application/rss+xml" />
	<link>https://dokugakuexcel.com</link>
	<description>初心者から中級者までシステム・関数・VBAを伝授します</description>
	<lastBuildDate>Thu, 13 Jul 2023 07:07:27 +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>文字列の長さ  |  独学エクセル塾</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練習問題12】指定した数値以下の最大値を表示！IFの複数条件処理を実践</title>
		<link>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%8c12%e3%80%91%e6%8c%87%e5%ae%9a%e3%81%97%e3%81%9f%e6%95%b0%e5%80%a4%e4%bb%a5%e4%b8%8b%e3%81%ae%e6%9c%80%e5%a4%a7%e5%80%a4/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590%25e3%2583%259e%25e3%2582%25af%25e3%2583%25advba%25e7%25b7%25b4%25e7%25bf%2592%25e5%2595%258f%25e9%25a1%258c12%25e3%2580%2591%25e6%258c%2587%25e5%25ae%259a%25e3%2581%2597%25e3%2581%259f%25e6%2595%25b0%25e5%2580%25a4%25e4%25bb%25a5%25e4%25b8%258b%25e3%2581%25ae%25e6%259c%2580%25e5%25a4%25a7%25e5%2580%25a4</link>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Mon, 03 Jul 2023 12:54:54 +0000</pubDate>
				<category><![CDATA[マクロVBA練習問題]]></category>
		<category><![CDATA[計算]]></category>
		<category><![CDATA[条件分岐]]></category>
		<category><![CDATA[文字数]]></category>
		<category><![CDATA[練習問題]]></category>
		<category><![CDATA[文字列の長さ]]></category>
		<category><![CDATA[Len]]></category>
		<category><![CDATA[IsNumeric]]></category>
		<category><![CDATA[VBA]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=4366</guid>

					<description><![CDATA[目次 練習問題と内容について・練習問題の狙い・練習問題12について練習問題の内容と動作説明問題内容動作説明ヒント・ヒントその1・ヒントその2・ヒントその3・ヒントその4解答コード・回答その①・回答その②必要な知識ループ構 [&#8230;]]]></description>
										<content:encoded><![CDATA[
  <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><ol><li><a href="#toc2" tabindex="0">・練習問題の狙い</a></li><li><a href="#toc3" tabindex="0">・練習問題12について</a></li></ol></li><li><a href="#toc4" tabindex="0">練習問題の内容と動作説明</a><ol><li><a href="#toc5" tabindex="0">問題内容</a></li><li><a href="#toc6" tabindex="0">動作説明</a></li></ol></li><li><a href="#toc7" tabindex="0">ヒント</a><ol><li><a href="#toc8" tabindex="0">・ヒントその1</a></li><li><a href="#toc9" tabindex="0">・ヒントその2</a></li><li><a href="#toc10" tabindex="0">・ヒントその3</a></li><li><a href="#toc11" tabindex="0">・ヒントその4</a></li></ol></li><li><a href="#toc12" tabindex="0">解答コード</a><ol><li><a href="#toc13" tabindex="0">・回答その①</a></li><li><a href="#toc14" tabindex="0">・回答その②</a></li></ol></li><li><a href="#toc15" tabindex="0">必要な知識</a><ol><li><a href="#toc16" tabindex="0">ループ構造</a></li><li><a href="#toc17" tabindex="0">条件分岐</a></li><li><a href="#toc18" tabindex="0"> メッセージボックスの表示</a></li><li><a href="#toc19" tabindex="0">セルの値が数値か判断</a></li></ol></li><li><a href="#toc20" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">練習問題と内容について</span></h2>
<!-- /wp:post-content -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><span id="toc2">・練習問題の狙い</span></h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>このシリーズでは課題を元にマクロVBAを<span class="marker-under-red"><strong>実践することでスキルを身につける</strong></span>ことが出来ます。</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>正直、ソースコード作成については実践あるのみです！</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>答えのコードについては数例挙げますが、「もっといい答えがある」などの意見があれば</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>問い合わせから連絡ください！  </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>こんな問題を作ってほしいなどの意見もお待ちしております！</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph /-->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><span id="toc3">・練習問題12について</span></h3>
<p>こちらはマクロVBAの知識で少し発展した課題になります。</p>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><span class="marker-under"><strong>指定されたセルの数値の中で指定数値以下の最大値を表示する練習問題</strong></span>となります。</p>
<p>それでは頑張っていきましょう！</p>
<h2 class="wp-block-heading"><span id="toc4">練習問題の内容と動作説明</span></h2>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><span id="toc5">問題内容</span></h3>
<p>セル番地A1からA10までの<span class="marker-under"><strong>数値の中で100以下の数値の最大値を持つセルの値を表示</strong></span>する。</p>
<p><img fetchpriority="high" decoding="async" class="alignnone wp-image-4367 " src="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-19.png" width="759" height="350" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-19.png 1037w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-19-300x138.png 300w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-19-1024x472.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-19-768x354.png 768w" sizes="(max-width: 759px) 100vw, 759px" /></p>
<h3 class="wp-block-heading"><span id="toc6">動作説明</span></h3>
<p>VBAを使用して、セル番地A1からA10までの数値を比較し、その中で100以下の数値の最大値を持つセルの値を表示します。</p>
<h2 class="wp-block-heading"><span id="toc7">ヒント</span></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><img decoding="async" class="alignnone  wp-image-4222" src="https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-300x200.jpg" alt="" width="458" height="305" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-300x200.jpg 300w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-1024x683.jpg 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-768x512.jpg 768w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-1536x1024.jpg 1536w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m.jpg 1920w" sizes="(max-width: 458px) 100vw, 458px" /> <br />以下のヒントを参考にして解答コードを作成してみてください。</p>
<h3><span id="toc8">・ヒントその1</span></h3>
<p>ループを使用して<span class="marker-under"><strong>セル番地A1からA10までの値を順番に取得</strong></span>します。<br /><br />例えば下記のような見本を紹介します。</p>
<div class="blank-box bb-blue"><strong>For Each cell In Range(&#8220;A1:A10&#8221;)</strong><br /> &#8216;ここに処理<br /><strong>Next cell</strong></div>
<div>これにより、A1からA10まで順に繰り返し処理を行います。</div>
<h3><span id="toc9">・ヒントその2</span></h3>
<p>各セルの値が100以下の場合に、<span class="marker-under"><strong>その値を保持する変数を使用して、最大値を更新</strong></span>します。</p>
<p>最大値の値を保持するためには変数を用いて「変数＝最大値」のように格納しておく必要があります。</p>
<h3><span id="toc10">・ヒントその3</span></h3>
<p><span class="marker-under"><strong>取得した値が最大値であるかどうかを判定する条件分岐</strong></span>を使用します。</p>
<p><span class="marker-under-red"><strong>条件分岐はIf Then</strong></span>を使用します。</p>
<p>例えば「数値1が90」、「数値2が80」の場合、「If 数値1＞数値2　then」で数値1が大きかった時の処理が行われます。</p>
<p>この構造を活用して、最大値を判断していきます。</p>
<p>さらに、100以下も条件として追加する必要があるため、２つの条件式が必要です。</p>
<p>その際のソースコードは下記の通りです。</p>
<div class="question-box common-icon-box"><span style="font-size: 20px;"><strong>If <span style="color: #ff0000;">条件式1</span>  And　<span style="color: #0000ff;">条件式2</span>　Then</strong></span></div>
<div>このように<span class="marker-under"><strong>「And」を用いることで２つの条件を設定</strong></span>することが可能です。</div>
<div>
<h3><span id="toc11">・ヒントその4</span></h3>
<p>今回は少し発展した内容を含めてみましょう。<br />仮に数値以外の文字などが入力されてあった場合エラーとなってしまいます。</p>
<p>そうなれば、優秀なソースコードは呼べません。<br />そこで処理前に数値であることを確認して処理してみましょう。</p>
<p>確認方法は<span class="marker-under-red"><strong>IsNumeric(<span style="color: #339966;">対象のセル・変数</span>)となります。</strong></span></p>
<p>&nbsp;</p>
</div>
<p>以上のヒントを参考に課題に取り組んでみてください！</p>
<p>&nbsp;</p>
<div class="blank-box bb-tab bb-good bb-red">最新・便利な機能を搭載したExcel・officeを試しませんか？ <br />Excel 2013以下を使用している方はサポートが終了しているので注意が必要です！<br /><a href="https://dokugakuexcel.com/excel%e3%83%bboffice%e3%81%ae%e4%be%a1%e6%a0%bc%e6%af%94%e8%bc%83%ef%bc%81%e3%81%82%e3%81%aa%e3%81%9f%e3%81%ab%e5%90%88%e3%81%a3%e3%81%9f%e3%82%aa%e3%82%b9%e3%82%b9%e3%83%a1%e3%81%ae%e8%a3%bd%e5%93%81/">【最新2023年】Excel・Officeの価格比較！あなたに合ったオススメの製品の選定方法から購入 ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<div> </div>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><span id="toc12">解答コード</span></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>では回答を見ていきましょう！</p>
<p><img decoding="async" class="alignnone  wp-image-4274" src="https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-300x225.jpg" alt="" width="399" height="299" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-300x225.jpg 300w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-1024x768.jpg 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-768x576.jpg 768w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-1536x1152.jpg 1536w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728.jpg 1600w" sizes="(max-width: 399px) 100vw, 399px" /></p>
<h3><span id="toc13">・回答その①</span></h3>
<div class="blank-box bb-tab bb-check bb-blue">
<p>Sub Exercise12to1()<br /><br />　Dim <strong><span style="color: #ff0000;">maxVal</span> </strong>As Double<br />　Dim <strong><span style="color: #339966;">cell</span> </strong>As Range<br /><br /><strong><span style="color: #ff0000;">maxVal</span> </strong>= -99999 &#8216; 初期値を負の無限大に設定<br /><br />For Each <strong><span style="color: #339966;">cell</span> </strong> In Range(<span style="color: #ffcc00;"><strong>&#8220;A1:A10&#8221;</strong></span>)<br />　If IsNumeric(<strong><span style="color: #339966;">cell</span> </strong>.Value) And <strong><span style="color: #0000ff;">cell.Value &lt;= 100</span></strong> Then<br />　　If <strong><span style="color: #339966;">cell</span> </strong>.Value &gt; <strong><span style="color: #ff0000;">maxVal</span> </strong>Then<br />　　　maxVal = <strong><span style="color: #339966;">cell</span> </strong>.Value<br />　　End If<br />　End If<br />Next <strong><span style="color: #339966;">cell</span> </strong><br /><br />Range(&#8220;C2&#8221;).Value = <strong><span style="color: #ff0000;">maxVal<br /></span> </strong><br />End Sub</p>
</div>
<div> </div>
<p>上記のコードは、<span class="marker-under"><strong>セル番地A1からA10までの数値の中で100以下の数値の最大値を持つセルの値を表示</strong></span>するVBAのマクロです。</p>
<p>解答コードの説明:<br />1. <strong><span style="color: #ff0000;">maxVal</span> </strong>という変数を用意し、初期値を負の無限大に設定します。<br />2. `For Each`ループを使用して、セル番地<strong><span style="color: #ffcc00;">A1からA10</span></strong>までの範囲をループします。<br />3. 各セルの値が数値であり、100以下の場合に条件を満たすかどうかを判定します。<br />4. 条件を満たす場合、そのセルの値が現在の<strong><span style="color: #ff0000;">maxVal</span> </strong>よりも大きい場合は、<strong><span style="color: #ff0000;">maxVal</span> </strong>を更新します。<br />5. ループが終了した後、<strong><span style="color: #ff0000;">maxVal</span> </strong>に格納された最大値をメッセージボックスで表示します。</p>
<p>&nbsp;</p>
<p>ちなみに今回は<span class="marker-under-red"><strong>「 IsNumeric(<span style="color: #339966;">cell</span> .Value)」を使用することで対象のセルが数値か判断</strong></span>しています。<br />数値でなければスルーしてくれます。</p>
<p>それでは実行してみましょう。<br />結果はこのようになります。</p>
<p><img decoding="async" class="alignnone wp-image-4368 " src="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-20.png" width="330" height="276" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-20.png 484w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-20-300x250.png 300w" sizes="(max-width: 330px) 100vw, 330px" /></p>
<p>１０個の数値の中で100以下の最大の数は「64」なので上手く機能していることがわかります。</p>
<h3><span id="toc14">・回答その②</span></h3>
<div class="blank-box bb-tab bb-check bb-blue">
<p>Sub Exercise12to2()<br /><br />　Dim <strong><span style="color: #ff0000;">maxVal</span> </strong>As Double<br />　Dim <strong><span style="color: #339966;">cell</span> </strong>As Range<br /><br /><strong><span style="color: #ff0000;">maxVal</span> </strong>= 0 &#8216; 初期値を0に設定<br /><br />For Each <strong><span style="color: #339966;">cell</span> </strong>In Range(<span style="color: #ffcc00;"><strong>&#8220;A1:A10&#8221;</strong></span>)<br />　If IsNumeric(<strong><span style="color: #339966;">cell</span> </strong>.Value) Then<br />　　If <strong><span style="color: #0000ff;">cell.Value &lt;= 100</span></strong> And <strong><span style="color: #339966;">cell</span> </strong>.Value &gt; <strong><span style="color: #ff0000;">maxVal</span> </strong> Then<br /><strong><span style="color: #ff0000;">　　　maxVal</span> </strong>= <strong><span style="color: #339966;">cell</span> </strong>.Value<br />　　End If<br />　End If<br />Next <strong><span style="color: #339966;">cell</span> </strong><br /><br />If <strong><span style="color: #ff0000;">maxVal</span> </strong>= 0 Then<br />　　MsgBox &#8220;100以下の数値は存在しません&#8221;<br />　Else<br />　　Range(&#8220;C2&#8221;).Value = <strong><span style="color: #ff0000;">maxVal</span> </strong><br />End If<br /><br />End Sub</p>
</div>
<div>
<p>この回答例では、初期値を0に設定し、ループ内で条件判定を行っています。</p>
<p>最大値が0のままであれば、<span class="marker-under"><strong>100以下の数値は存在しないことをメッセージボックスで表示</strong></span>します。<br /><br /></p>
<p><img decoding="async" width="232" height="177" class="alignnone wp-image-4369 size-full" src="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-21.png" /></p>
</div>
<p>&nbsp;</p>
<p>  <img decoding="async" id="thepasted-1" class="alignnone  wp-image-4221" src="https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-300x225.png" alt="" width="436" height="327" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-300x225.png 300w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-1024x768.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-768x576.png 768w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-1536x1152.png 1536w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909.png 1600w" sizes="(max-width: 436px) 100vw, 436px" /></p>
<h2 class="wp-block-heading"><span id="toc15">必要な知識</span></h2>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>この問題を解くためには、以下の基本的な知識が必要です。</p>
<h3><span id="toc16">ループ構造</span></h3>
<p>偶数の個数を数えるためには、<span class="marker-under"><strong>セル番地A1からA10までの値を1つずつ判定</strong></span>する必要があります。<br /><strong>ループ構造</strong>を使用して、指定した範囲のセルを順番に処理する方法を理解する必要があります。<br />今回は<strong>For Each文</strong>と<strong>For Next文</strong>を使用しました。</p>
<div class="information-box common-icon-box"><a href="https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-7%e3%80%91fornext%e3%81%a7%e6%8c%87%e5%ae%9a%e3%81%97%e3%81%9f%e6%95%b0%e5%80%a4%e3%81%a7%e7%b9%b0%e3%82%8a%e8%bf%94%e3%81%97%e3%83%bb%e3%83%ab%e3%83%bc/">【マクロVBA】For…Nextで指定した数値で繰り返し・ループをする方法と途中で抜け出す方法 ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<div class="information-box common-icon-box"><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】For Eath Nextで配列・コレクション内で繰り返し・ループ処理!抜け出す方法 ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<h3><span id="toc17">条件分岐</span></h3>
<p>セルの値が偶数かどうかを判定するためには、条件分岐の文法を理解する必要があります。<br />VBAではIf&#8230;Then&#8230;Else文やSelect Case文などが使用されます。</p>
<div class="information-box common-icon-box"><a href="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/">【マクロVBA】If …Thenで条件分岐・判別をする!Elseで異なる処理パターンも可能に ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<h3><span id="toc18"> メッセージボックスの表示</span></h3>
<p>メッセージボックスを表示するためには、MsgBox関数を使用します。<br />この関数を使うと、メッセージや結果をダイアログボックスとして表示することができます。</p>
<p>見本では「MsgBox &#8220;100以下の数値は存在しません&#8221;」と入力しましたが、下図のように表示されます。</p>
<p><img decoding="async" width="232" height="177" id="thepasted-4" class="alignnone wp-image-4369 size-full" src="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-21.png" /></p>
<h3><span id="toc19">セルの値が数値か判断</span></h3>
<p>今回は少し発展した課題にしたため、対象のセルの値が数値であるか確認しました。</p>
<p>確認方法は<span class="marker-under-red"><strong>IsNumeric(<span style="color: #339966;">cell</span> .Value)となります。</strong></span></p>
<p>こちらを条件分岐に入れることで、文字などが入っていた場合は対象のセルをスルーするようにしています。</p>
<div class="information-box common-icon-box"><a href="https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%80%91isnumeric%e9%96%a2%e6%95%b0%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%a6%e6%95%b0%e5%80%a4%e5%88%a4%e5%ae%9a%ef%bc%81%e5%a4%89%e6%95%b0%e3%83%bb%e3%82%bb/">【マクロVBA】IsNumeric関数を使って数値判定！変数・セルの値でも数字であるか判別可能 ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<h2 class="wp-block-heading"><span id="toc20">まとめ</span></h2>
<p>この練習問題では、VBAを使用してセル番地A1からA10までの数値の中で100以下の数値の最大値を持つセルの値を表示する方法を学びました。</p>
<p>具体的には、ループを使用して各セルの値を比較し、条件を満たす場合に最大値を更新するという手法を用いました。</p>
<p>VBAを使うことで、Excelのデータを効率的に処理したり、特定の条件に基づいて操作したりすることができます。</p>
<p>練習問題を通じて、VBAの基礎知識を身につけ、より高度な処理や操作に挑戦してみましょう。</p>
<p>次の練習問題では、さらに複雑な問題に取り組んでいきますので、ぜひ続けて挑戦してください。</p>
<p>&nbsp;</p>
<p>以上で練習問題12となります。お疲れ様でした！</p>]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4366</post-id>	</item>
		<item>
		<title>【マクロVBA練習問題11】文字数・文字列の長さを計算・算出し、合計値を計算する</title>
		<link>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%8c11%e3%80%91%e6%96%87%e5%ad%97%e6%95%b0%e3%83%bb%e6%96%87%e5%ad%97%e5%88%97%e3%81%ae%e9%95%b7%e3%81%95%e3%82%92%e8%a8%88/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590%25e3%2583%259e%25e3%2582%25af%25e3%2583%25advba%25e7%25b7%25b4%25e7%25bf%2592%25e5%2595%258f%25e9%25a1%258c11%25e3%2580%2591%25e6%2596%2587%25e5%25ad%2597%25e6%2595%25b0%25e3%2583%25bb%25e6%2596%2587%25e5%25ad%2597%25e5%2588%2597%25e3%2581%25ae%25e9%2595%25b7%25e3%2581%2595%25e3%2582%2592%25e8%25a8%2588</link>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Mon, 03 Jul 2023 02:35:25 +0000</pubDate>
				<category><![CDATA[計算・関数]]></category>
		<category><![CDATA[文字操作]]></category>
		<category><![CDATA[マクロVBA練習問題]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[文字数]]></category>
		<category><![CDATA[練習問題]]></category>
		<category><![CDATA[文字列の長さ]]></category>
		<category><![CDATA[Len]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=4359</guid>

					<description><![CDATA[目次 練習問題と内容について・練習問題の狙い・練習問題11について練習問題の内容と動作説明問題内容動作説明ヒント・ヒントその1・ヒントその2・ヒントその3解答コード・回答その①・回答その②必要な知識ループ構造文字列の長さ [&#8230;]]]></description>
										<content:encoded><![CDATA[
  <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><ol><li><a href="#toc2" tabindex="0">・練習問題の狙い</a></li><li><a href="#toc3" tabindex="0">・練習問題11について</a></li></ol></li><li><a href="#toc4" tabindex="0">練習問題の内容と動作説明</a><ol><li><a href="#toc5" tabindex="0">問題内容</a></li><li><a href="#toc6" tabindex="0">動作説明</a></li></ol></li><li><a href="#toc7" tabindex="0">ヒント</a><ol><li><a href="#toc8" tabindex="0">・ヒントその1</a></li><li><a href="#toc9" tabindex="0">・ヒントその2</a></li><li><a href="#toc10" tabindex="0">・ヒントその3</a></li></ol></li><li><a href="#toc11" tabindex="0">解答コード</a><ol><li><a href="#toc12" tabindex="0">・回答その①</a></li><li><a href="#toc13" tabindex="0">・回答その②</a></li></ol></li><li><a href="#toc14" tabindex="0">必要な知識</a><ol><li><a href="#toc15" tabindex="0">ループ構造</a></li><li><a href="#toc16" tabindex="0">文字列の長さの計算</a></li></ol></li><li><a href="#toc17" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">練習問題と内容について</span></h2>
<!-- /wp:post-content -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><span id="toc2">・練習問題の狙い</span></h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>このシリーズでは課題を元にマクロVBAを<span class="marker-under-red"><strong>実践することでスキルを身につける</strong></span>ことが出来ます。</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>正直、ソースコード作成については実践あるのみです！</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>答えのコードについては数例挙げますが、「もっといい答えがある」などの意見があれば</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>問い合わせから連絡ください！  </p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>こんな問題を作ってほしいなどの意見もお待ちしております！</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph /-->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><span id="toc3">・練習問題11について</span></h3>
<p>こちらはマクロVBAの知識で少し発展した課題になります。</p>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><span class="marker-under"><strong>指定されたセルの文字数・文字列の長さの合計値を計算し、表示する練習問題</strong></span>となります。</p>
<p>それでは頑張っていきましょう！</p>
<h2 class="wp-block-heading"><span id="toc4">練習問題の内容と動作説明</span></h2>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><span id="toc5">問題内容</span></h3>
<p>セル番地A1からA10までの<span class="marker-under"><strong>文字数・文字列の長さの合計値を計算</strong></span>し、セル番地C2に結果を表示する。</p>
<p><img decoding="async" class="alignnone wp-image-4360 " src="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-16.png" width="741" height="320" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-16.png 1344w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-16-300x130.png 300w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-16-1024x443.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-16-768x332.png 768w" sizes="(max-width: 741px) 100vw, 741px" /></p>
<h3 class="wp-block-heading"><span id="toc6">動作説明</span></h3>
<p>VBAを使用して、セル番地A1からA10までの文字列の長さを計算し、その合計値をセル番地C2に表示します。</p>
<p>具体的には、A1からA10までのセルの値を取得し、文字数・文字列の長さを計算していき、最終的な合計値をC2に表示する必要があります。</p>
<h2 class="wp-block-heading"><span id="toc7">ヒント</span></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><img decoding="async" class="alignnone  wp-image-4222" src="https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-300x200.jpg" alt="" width="458" height="305" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-300x200.jpg 300w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-1024x683.jpg 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-768x512.jpg 768w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m-1536x1024.jpg 1536w, https://dokugakuexcel.com/wp-content/uploads/2023/06/25232784_m.jpg 1920w" sizes="(max-width: 458px) 100vw, 458px" /> <br />以下のヒントを参考にして解答コードを作成してみてください。</p>
<h3><span id="toc8">・ヒントその1</span></h3>
<p>ループを使用して<span class="marker-under"><strong>セル番地A1からA10までの値を順番に取得</strong></span>します。<br /><br />例えば下記のような見本を紹介します。</p>
<div class="blank-box bb-blue"><strong>For Each cell In Range(&#8220;A1:A10&#8221;)</strong><br /> &#8216;ここに処理<br /><strong>Next cell</strong></div>
<div>これにより、A1からA10まで順に繰り返し処理を行います。</div>
<h3><span id="toc9">・ヒントその2</span></h3>
<p>セルに入力されてある文字数・文字列の長さを計算するためには「Len関数」を使用する必要があります。</p>
<p>Len関数の構文は下記の通りです。</p>
<div class="memo-box common-icon-box"><strong><span class="bold-red">出力先</span></strong><b>＝Len(<span class="bold-blue">対象となる文字列</span>)</b></div>
<div>こちらの構文を活用して、文字数・文字列の長さを計算してください。</div>
<h3><span id="toc10">・ヒントその3</span></h3>
<p>文字数・文字列の長さをカウントアップします。</p>
<p><span class="marker-under"><strong>カウントアップ方法は「変数＝変数+1」</strong></span>で指定した変数がカウントアップされます。</p>
<p><br />これらのヒントを参考にして、解答コードを作成してみてください。  </p>
<p>&nbsp;</p>
<div class="blank-box bb-tab bb-good bb-red">最新・便利な機能を搭載したExcel・officeを試しませんか？ <br />Excel 2013以下を使用している方はサポートが終了しているので注意が必要です！<br /><a href="https://dokugakuexcel.com/excel%e3%83%bboffice%e3%81%ae%e4%be%a1%e6%a0%bc%e6%af%94%e8%bc%83%ef%bc%81%e3%81%82%e3%81%aa%e3%81%9f%e3%81%ab%e5%90%88%e3%81%a3%e3%81%9f%e3%82%aa%e3%82%b9%e3%82%b9%e3%83%a1%e3%81%ae%e8%a3%bd%e5%93%81/">【最新2023年】Excel・Officeの価格比較！あなたに合ったオススメの製品の選定方法から購入 ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<div> </div>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>&nbsp;</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><span id="toc11">解答コード</span></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>では回答を見ていきましょう！</p>
<p><img decoding="async" class="alignnone  wp-image-4274" src="https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-300x225.jpg" alt="" width="399" height="299" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-300x225.jpg 300w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-1024x768.jpg 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-768x576.jpg 768w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728-1536x1152.jpg 1536w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23623728.jpg 1600w" sizes="(max-width: 399px) 100vw, 399px" /></p>
<h3><span id="toc12">・回答その①</span></h3>
<div class="blank-box bb-tab bb-check bb-blue">
<p>Sub Exercise11to1()<br /><br />　Dim <strong><span style="color: #ff0000;">totalLength</span> </strong>As Integer<br />　Dim cell As Range</p>
<p>　<strong><span style="color: #ff0000;">totalLength</span> </strong>= 0<br />　For Each cell In Range(&#8220;<span style="color: #339966;"><strong>A1:A10</strong></span>&#8220;)<br />　　<strong><span style="color: #ff0000;">totalLength</span> </strong>= <strong><span style="color: #ff0000;">totalLength</span> </strong>+ Len(cell.Value)<br />　Next cell</p>
<p>　Range(&#8220;<strong><span style="color: #0000ff;">C2</span></strong>&#8220;).Value = totalLength<br /><br />End Sub</p>
</div>
<div>
<p>上記のコードは、セル番地<span style="color: #339966;"><strong>A1</strong></span>から<span style="color: #339966;"><strong>A10</strong></span>までの文字列の長さの合計値を計算し、セル番地<strong><span style="color: #0000ff;">C2</span></strong>に結果を表示するVBAのマクロです。</p>
<p>解答コードの流れは以下の通りです<br /><br />1. <strong><span style="color: #ff0000;">totalLength</span> </strong>という変数を宣言し、合計値を保持します。<br />2. ループを使用して、セル番地<strong><span style="color: #339966;">A1</span></strong>から<span style="color: #339966;"><strong>A10</strong></span>までのセルの値を取得します。<br />3. 取得したセルの値の文字列の長さを計算し、合計値に加算します。<br />4. 最終的な合計値をセル番地<strong><span style="color: #0000ff;">C2</span></strong>に表示します。</p>
</div>
<p>では実行してみましょう。<br />結果はこのようになります。</p>
<p><img decoding="async" class="alignnone wp-image-4361 " src="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-17.png" width="461" height="364" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-17.png 658w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-17-300x237.png 300w" sizes="(max-width: 461px) 100vw, 461px" /></p>
<p><span class="marker-under"><strong>文字数の合計は「33」</strong></span>となりました。<br /><img decoding="async" class="alignnone wp-image-4362 " src="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-18.png" width="265" height="362" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-18.png 400w, https://dokugakuexcel.com/wp-content/uploads/2023/07/Pasted-18-219x300.png 219w" sizes="(max-width: 265px) 100vw, 265px" /></p>
<p>文字数の合計は手動で数えても「33」なので問題なく機能していることが分かります。</p>
<h3><span id="toc13">・回答その②</span></h3>
<div class="blank-box bb-tab bb-check bb-blue">
<p>Sub Exercise11to2()<br /><br />Dim <strong><span style="color: #ff0000;">totalLength</span> </strong>As Integer<br />Dim <strong><span style="color: #3366ff;">TargetLength</span> </strong>As Integer</p>
<p>　<strong><span style="color: #ff0000;">totalLength</span> </strong>= 0<br />　For i = 1 To 10<br />　　<strong><span style="color: #3366ff;">TargetLength</span> </strong>= <strong><span style="color: #339966;">Len(Cells(i, 1))</span></strong><br />　　<strong><span style="color: #ff0000;">totalLength</span> </strong>= <strong><span style="color: #ff0000;">totalLength</span> </strong>+ <strong><span style="color: #3366ff;">TargetLength</span> </strong><br />　Next i</p>
<p>　Range(&#8220;C2&#8221;).Value = <strong><span style="color: #ff0000;">totalLength</span> </strong></p>
<p><br />End Sub</p>
</div>
<div>
<p>上記のコードでは、Forループを使用してセル番地A1からA10までの文字列の長さを計算しています。<br />変数「<strong><span style="color: #339966;">i</span></strong>」を1から10までの値で変化させ、<strong><span class="marker-under"><span style="color: #339966;">Len(Cells(i, 1))</span>を使用してセルの値の文字の数を取得</span></strong>しています。</p>
<p>計算した文字列の長さを<strong><span style="color: #ff0000;">totalLength</span></strong>に加算し、最終的な合計値をセル番地C2に表示しています。</p>
</div>
<p>&nbsp;</p>
<p>  <img decoding="async" id="thepasted-1" class="alignnone  wp-image-4221" src="https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-300x225.png" alt="" width="436" height="327" srcset="https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-300x225.png 300w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-1024x768.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-768x576.png 768w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909-1536x1152.png 1536w, https://dokugakuexcel.com/wp-content/uploads/2023/06/23195909.png 1600w" sizes="(max-width: 436px) 100vw, 436px" /></p>
<h2 class="wp-block-heading"><span id="toc14">必要な知識</span></h2>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>この問題を解くためには、以下の基本的な知識が必要です。</p>
<h3><span id="toc15">ループ構造</span></h3>
<p>偶数の個数を数えるためには、<span class="marker-under"><strong>セル番地A1からA10までの値を1つずつ判定</strong></span>する必要があります。<br /><strong>ループ構造</strong>を使用して、指定した範囲のセルを順番に処理する方法を理解する必要があります。<br />今回は<strong>For Each文</strong>と<strong>For Next文</strong>を使用しました。</p>
<div class="information-box common-icon-box"><a href="https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-7%e3%80%91fornext%e3%81%a7%e6%8c%87%e5%ae%9a%e3%81%97%e3%81%9f%e6%95%b0%e5%80%a4%e3%81%a7%e7%b9%b0%e3%82%8a%e8%bf%94%e3%81%97%e3%83%bb%e3%83%ab%e3%83%bc/">【マクロVBA】For…Nextで指定した数値で繰り返し・ループをする方法と途中で抜け出す方法 ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<div class="information-box common-icon-box"><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】For Eath Nextで配列・コレクション内で繰り返し・ループ処理!抜け出す方法 ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<h3><span id="toc16">文字列の長さの計算</span></h3>
<p><span class="marker-under"><strong>文字列の長さを計算するために、Len関数を使用</strong></span>します。Len関数は、文字列の長さを返します。</p>
<p>構文をは下記の通りです。</p>
<p><strong><span class="bold-red">出力先</span></strong><b>＝Len(<span class="bold-blue">対象となる文字列</span>)</b></p>
<p>とてもシンプルな関数ですね。</p>
<div class="information-box common-icon-box"><a href="https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%80%91%e3%82%bb%e3%83%ab%e3%83%bb%e5%a4%89%e6%95%b0%e3%81%ae%e6%96%87%e5%ad%97%e6%95%b0%e3%82%92%e6%b1%82%e3%82%81%e3%82%8b%e6%96%b9%e6%b3%95lenb%e9%96%a2/">【マクロVBA】セル・変数の文字数を求める方法!LenB関数でバイトデータでも対応可能！ ► 独学エクセル塾 (dokugakuexcel.com)</a></div>
<p>&nbsp;</p>
<h2 class="wp-block-heading"><span id="toc17">まとめ</span></h2>
<p>この練習問題では、VBAを使用してセル番地A1からA10までの文字列の長さの合計値を計算し、セル番地C2に結果を表示する方法を学びました。</p>
<p>具体的には、Forループを使用してセルの範囲を繰り返し処理し、各セルの値の文字列の長さを計算しました。<br />計算した長さを合計値に加算していき、最終的な結果をセル番地C2に表示しました。</p>
<p>この問題を解くためには、ループ構造の理解、セルの範囲指定、文字列の長さの計算、変数の宣言と使用といった基本的な知識が必要です。</p>
<p>&nbsp;</p>
<p>VBAを使ってExcelの操作を自動化することで、繰り返し行われる処理や複雑な計算を効率的に実行することができます。</p>
<p>練習問題を通じて、VBAのスキルを向上させ、Excelの操作やデータ処理の効率化を実現するための能力を身につけていきましょう。</p>
<p>&nbsp;</p>
<p>以上で練習問題11となります。お疲れ様でした！</p>]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4359</post-id>	</item>
	</channel>
</rss>
