<?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>Variant  |  独学エクセル塾</title>
	<atom:link href="https://dokugakuexcel.com/tag/variant/feed/" rel="self" type="application/rss+xml" />
	<link>https://dokugakuexcel.com</link>
	<description>初心者から中級者までシステム・関数・VBAを伝授します</description>
	<lastBuildDate>Mon, 17 Oct 2022 13:58:12 +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>Variant  |  独学エクセル塾</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】複数の2次配列内（Variant)のセル・指定位置に数値・文字を入力・出力する方法</title>
		<link>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%80%91%e8%a4%87%e6%95%b0%e3%81%ae2%e6%ac%a1%e9%85%8d%e5%88%97%e5%86%85%ef%bc%88%ef%bd%96ariant%e3%81%ae%e3%82%bb%e3%83%ab%e3%83%bb%e6%8c%87%e5%ae%9a%e4%bd%8d/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590%25e3%2583%259e%25e3%2582%25af%25e3%2583%25advba%25e3%2580%2591%25e8%25a4%2587%25e6%2595%25b0%25e3%2581%25ae2%25e6%25ac%25a1%25e9%2585%258d%25e5%2588%2597%25e5%2586%2585%25ef%25bc%2588%25ef%25bd%2596ariant%25e3%2581%25ae%25e3%2582%25bb%25e3%2583%25ab%25e3%2583%25bb%25e6%258c%2587%25e5%25ae%259a%25e4%25bd%258d</link>
					<comments>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%80%91%e8%a4%87%e6%95%b0%e3%81%ae2%e6%ac%a1%e9%85%8d%e5%88%97%e5%86%85%ef%bc%88%ef%bd%96ariant%e3%81%ae%e3%82%bb%e3%83%ab%e3%83%bb%e6%8c%87%e5%ae%9a%e4%bd%8d/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Wed, 13 Jul 2022 14:18:44 +0000</pubDate>
				<category><![CDATA[便利技]]></category>
		<category><![CDATA[マクロVBA応用・便利技]]></category>
		<category><![CDATA[Variant]]></category>
		<category><![CDATA[配列]]></category>
		<category><![CDATA[２次配列]]></category>
		<category><![CDATA[位置]]></category>
		<category><![CDATA[セル]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=3356</guid>

					<description><![CDATA[マクロVBAの機能には配列というとても便利な機能が存在します。 しかし「data(5)」のように複数の配列の中から数値・文字を入力・出力するには悩まれる方も多いのではないでしょうか。 そこで今回は複数の2次配列内の入力・ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">マクロVBAの機能には<strong><span class="marker-under">配列</span></strong>というとても便利な機能が存在します。</p>



<p class="wp-block-paragraph">しかし「data(5)」のように<strong><span class="marker-under">複数の配列の中から数値・文字を入力・出力</span></strong>するには<br>悩まれる方も多いのではないでしょうか。</p>



<p class="wp-block-paragraph">そこで今回は<strong><span class="marker-under">複数の2次配列内の入力・出力方法</span></strong>について紹介したいと思います。<br>それでは見ていきましょう。</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">&#x2b1b;︎こんなことができるようになる。</a></li><li><a href="#toc2" tabindex="0">&#x2b1b;︎通常の2次配列内の指定位置・セルの文字を入出力する</a></li><li><a href="#toc3" tabindex="0">&#x2b1b;︎連続した2次配列内の指定位置・セルに入力・出力をする方法</a></li><li><a href="#toc4" tabindex="0">&#x2b1b;︎まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">&#x2b1b;︎こんなことができるようになる。</span></h2>



<p class="wp-block-paragraph">・複数の２次配列内の指定位置・セルの文字数値を入力・出力できるようになる</p>



<figure class="wp-block-image size-large is-resized"><img fetchpriority="high" decoding="async" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-1024x464.png" alt="" class="wp-image-3363" width="527" height="238" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-1024x464.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-300x136.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-768x348.png 768w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26.png 1105w" sizes="(max-width: 527px) 100vw, 527px" /></figure>



<h2 class="wp-block-heading"><span id="toc2">&#x2b1b;︎通常の2次配列内の指定位置・セルの文字を入出力する</span></h2>



<p class="wp-block-paragraph">まず初めに<strong><span class="marker-under">通常の2次配列内の指定した位置・セルから文字・数値を出力、または入力</span></strong>してみましょう。<br>見本で以下のシートを用意しました。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="237" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-20-1024x237.png" alt="" class="wp-image-3357" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-20-1024x237.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-20-300x69.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-20-768x178.png 768w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-20.png 1077w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">内容としては<span class="bold-red">「B3からE5」</span>までを配列に格納して<br><strong><span class="marker-under-red">配列内</span></strong>に入力したのち、<span class="bold-blue">「G3からJ5」</span>に貼り付けます。</p>



<p class="wp-block-paragraph">プログラムはこのようになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 配列見本()</p><p>Dim<span class="marker-under-red"> Data</span></p><p><span class="marker-under-red">Data </span>=<span class="bold-red"> Range(&#8220;B3:E5&#8221;)</span></p><p><span class="bold-blue">Range(&#8220;G3:J5&#8221;)</span> =<span class="marker-under-red"> Data</span></p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph">実行した結果こちら。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="239" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-21-1024x239.png" alt="" class="wp-image-3358" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-21-1024x239.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-21-300x70.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-21-768x179.png 768w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-21.png 1100w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">上手く配列に格納して、貼り付けもできています。<br>では配列内の指定位置に数値を入力するプログラムを作成していきましょう。</p>



<p class="wp-block-paragraph">例えば3行目の５列目にあたる、<strong><span class="marker-under">「E3」は「cells(3,5)」</span></strong>ですが、同じ要領で<br>2次配列に格納した<strong><span class="marker-under">3行目の５列目は「変数名（3,5）」</span></strong>となります。</p>



<p class="wp-block-paragraph">では再度見本を見ていきましょう。<br><span class="bold-red">「B3からE5」</span>を配列に格納して配列内の<strong><span class="marker-under">2行目の3行目</span></strong>に<span class="bold-green">「123」</span>を入力し、<br><span class="bold-blue">「G3からJ5」</span>に格納した配列を出力します。</p>



<p class="wp-block-paragraph">プログラムはこのようになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 配列見本()</p><p>Dim<span class="marker-under-red"> Data</span></p><p><span class="marker-under-red">Data</span> = <span class="bold-red">Range(&#8220;B3:E5&#8221;)</span><br><span class="marker-under-red">Data</span><span class="marker-under">(2, 3) </span>=<span class="bold-green"> 123</span></p><p><span class="bold-blue">Range(&#8220;G3:J5&#8221;)</span> = <span class="marker-under-red">Data</span></p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph">実行した結果はこちらです。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="265" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-22-1024x265.png" alt="" class="wp-image-3359" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-22-1024x265.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-22-300x78.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-22-768x199.png 768w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-22.png 1079w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">格納した配列に変数に文字・数値を入力して、その配列を<br>別のセルに貼り付けることができるようになりました。</p>



<p class="wp-block-paragraph">　</p>



<p class="wp-block-paragraph">こちらの方法は処理の<strong><span class="marker-under">高速化にも応用</span></strong>できます。<br>例えばセル内の文字数値の計算をする際に計算する回数が多ければ<br>処理速度は遅くなってしまいます。</p>



<p class="wp-block-paragraph">そこで計算したい数値を配列に格納して<br>配列内で計算させて、最後にセルに出力することで、<br>処理速度はとても速くなります。</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-%e9%ab%98%e9%80%9f%e5%8c%96%e2%91%a1%e3%80%91%e3%81%82%e3%81%be%e3%82%8a%e7%9f%a5%e3%82%89%e3%82%8c%e3%81%a6%e3%81%84%e3%81%aa%e3%81%84%ef%bc%9f%e5%a4%a7%e9%87%8f/">【マクロVBA知識 高速化②】あまり知られていない？大量データで処理が遅いマクロVBAを高速化 ► 独学エクセル塾 (dokugakuexcel.com)</a></p>



<h2 class="wp-block-heading"><span id="toc3">&#x2b1b;︎連続した2次配列内の指定位置・セルに入力・出力をする方法</span></h2>



<p class="wp-block-paragraph">では<strong><span class="marker-under">連続した2次配列の方法</span></strong>を見てみましょう。<br>例えば「N(5)」のようにNという配列を5つ活用することができます。</p>



<p class="wp-block-paragraph">例を見ていきましょう。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="854" height="407" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-23.png" alt="" class="wp-image-3360" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-23.png 854w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-23-300x143.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-23-768x366.png 768w" sizes="(max-width: 854px) 100vw, 854px" /></figure>



<p class="wp-block-paragraph">「B2からE3」「B5からE6」「B8からE9」「B11からE12」「B14からE15」を<br><span class="bold-red">N</span>という配列に格納してみましょう。</p>



<p class="wp-block-paragraph">そして出力したい配列を変数「<span class="bold-blue">Number</span>」で指定したいとします。<br>プログラムはこのようになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 二次配列見本()</p><p>Dim <span class="bold-red">N</span>(5), Number As Long</p><p><span class="bold-blue">Number </span>= 2 &#8216;表示したい配列番号を入力</p><p>　</p><p><span class="bold-red">N</span>(1) = Range(&#8220;B2:E3&#8221;)<br><span class="bold-red">N</span>(2) = Range(&#8220;B5:E6&#8221;)<br><span class="bold-red">N</span>(3) = Range(&#8220;B8:E9&#8221;)<br><span class="bold-red">N</span>(4) = Range(&#8220;B11:E12&#8221;)<br><span class="bold-red">N</span>(5) = Range(&#8220;B14:E15&#8221;)</p><p>　</p><p>Range(&#8220;G8:J9&#8221;) = <span class="bold-red">N</span>(<span class="bold-blue">Number</span>)</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph">今回は変数「<span class="bold-blue">Number</span>」を<span class="bold-blue">2</span>で実行してみましょう。<br>結果はこのようになります。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="468" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-24-1024x468.png" alt="" class="wp-image-3361" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-24-1024x468.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-24-300x137.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-24-768x351.png 768w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-24.png 1114w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">N（2）の配列を貼り付けることができました。<br>さらに「<span class="bold-blue">number</span>」を<span class="bold-blue">4</span>で実行すると、、、</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 二次配列見本()</p><p>Dim N(5), Number As Long</p><p><span class="bold-blue">Number</span> = 4 &#8216;表示したい配列番号を入力</p><p>N(1) = Range(&#8220;B2:E3&#8221;)<br>N(2) = Range(&#8220;B5:E6&#8221;)<br>N(3) = Range(&#8220;B8:E9&#8221;)<br>N(4) = Range(&#8220;B11:E12&#8221;)<br>N(5) = Range(&#8220;B14:E15&#8221;)</p><p>Range(&#8220;G8:J9&#8221;) = N(<span class="bold-blue">Number</span>)</p><p>End Sub</p></blockquote>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="478" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-25-1024x478.png" alt="" class="wp-image-3362" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-25-1024x478.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-25-300x140.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-25-768x358.png 768w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-25.png 1099w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">N（4）の配列を貼り付けることができました。</p>



<p class="wp-block-paragraph">　</p>



<p class="wp-block-paragraph">では本題です。<br>複数の配列の中の位置・セルに入力・出力をしてみましょう。</p>



<p class="wp-block-paragraph"><strong><span class="marker-under">１つの配列だと「変数（行数,列数）」で</span></strong>したね。<br><strong><span class="marker-under">複数の配列の場合は「変数（<span class="bold-red">配列数</span>）（<span class="bold-blue">行数</span>,<span class="bold-green">列数</span>）」</span></strong>となります。</p>



<p class="wp-block-paragraph">では実際にプログラムにて確認していきましょう。<br>先ほどの見本を活用し、N（<span class="bold-red">Number</span>）の<span class="bold-blue">1行目</span>の<span class="bold-green">３列目</span>に「456」を入力して<br>配列N（Number）をG8からJ9に貼り付けましょう。</p>



<p class="wp-block-paragraph">今回はN(<span class="bold-red">3</span>)の配列を貼り付けたいと思います。</p>



<p class="wp-block-paragraph">プログラムはこのようになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 二次配列見本()</p><p>Dim N(5), Number As Long</p><p><span class="bold-red">Number</span> = <span class="bold-red">3</span> &#8216;表示したい配列番号を入力</p><p>N(1) = Range(&#8220;B2:E3&#8221;)<br>N(2) = Range(&#8220;B5:E6&#8221;)<br>N(3) = Range(&#8220;B8:E9&#8221;)<br>N(4) = Range(&#8220;B11:E12&#8221;)<br>N(5) = Range(&#8220;B14:E15&#8221;)</p><p>N(<span class="bold-red">Number</span>)(<span class="bold-blue">1</span>, <span class="bold-green">3</span>) = 456</p><p>Range(&#8220;G8:J9&#8221;) = N(Number)</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph">実行した結果はこちらです。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="464" src="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-1024x464.png" alt="" class="wp-image-3363" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-1024x464.png 1024w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-300x136.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26-768x348.png 768w, https://dokugakuexcel.com/wp-content/uploads/2022/07/image-26.png 1105w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">複数の配列内の指定した位置にも数値を格納できていますね。<br>もちろん計算させることも可能です。</p>



<h2 class="wp-block-heading"><span id="toc4">&#x2b1b;︎まとめ</span></h2>



<p class="wp-block-paragraph">いかがだったでしょうか。<br>2次配列は複数のセルを格納できたり、配列の数も変えれたりと、とても便利です。</p>



<p class="wp-block-paragraph">しかし初心者のかたは慣れるまで習得しにくく<br>できることも十分に理解するまで時間がかかるように思います。</p>



<p class="wp-block-paragraph">是非配列の知識を身につけて<br>活用してみてください。</p>



<p class="wp-block-paragraph">それでは次回の記事でお会いしましょう。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%80%91%e8%a4%87%e6%95%b0%e3%81%ae2%e6%ac%a1%e9%85%8d%e5%88%97%e5%86%85%ef%bc%88%ef%bd%96ariant%e3%81%ae%e3%82%bb%e3%83%ab%e3%83%bb%e6%8c%87%e5%ae%9a%e4%bd%8d/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3356</post-id>	</item>
		<item>
		<title>【マクロVBA】変数型の一覧と意味と必要性について！数値や文字・配列の変数を宣言・定義をする方法</title>
		<link>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-6%e3%80%91%e5%a4%89%e6%95%b0%e3%81%a8%e3%81%af%e5%a4%89%e6%95%b0%e3%81%ae%e4%b8%80%e8%a6%a7%e3%81%a8%e6%84%8f%e5%91%b3%e3%83%bb%e5%a4%89%e6%95%b0%e3%81%ae%e5%ae%a3/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590vba%25e7%259f%25a5%25e8%25ad%2598-6%25e3%2580%2591%25e5%25a4%2589%25e6%2595%25b0%25e3%2581%25a8%25e3%2581%25af%25e5%25a4%2589%25e6%2595%25b0%25e3%2581%25ae%25e4%25b8%2580%25e8%25a6%25a7%25e3%2581%25a8%25e6%2584%258f%25e5%2591%25b3%25e3%2583%25bb%25e5%25a4%2589%25e6%2595%25b0%25e3%2581%25ae%25e5%25ae%25a3</link>
					<comments>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-6%e3%80%91%e5%a4%89%e6%95%b0%e3%81%a8%e3%81%af%e5%a4%89%e6%95%b0%e3%81%ae%e4%b8%80%e8%a6%a7%e3%81%a8%e6%84%8f%e5%91%b3%e3%83%bb%e5%a4%89%e6%95%b0%e3%81%ae%e5%ae%a3/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Sun, 04 Jul 2021 00:28:39 +0000</pubDate>
				<category><![CDATA[基礎知識]]></category>
		<category><![CDATA[マクロVBA]]></category>
		<category><![CDATA[String]]></category>
		<category><![CDATA[Long]]></category>
		<category><![CDATA[型]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[Variant]]></category>
		<category><![CDATA[変数]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=441</guid>

					<description><![CDATA[VBAに欠かせない機能として「変数」というものがあります数学でも使用される変数と意味合いは一緒です。 数値や文字を入れる部屋みたいなものですね。 さらにその変数を使用して計算や比較など行うことができる優れものです。とても [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">VBAに欠かせない機能として「変数」というものがあります<br>数学でも使用される変数と意味合いは一緒です。</p>



<p class="wp-block-paragraph"><strong><span class="marker-under">数値や文字を入れる部屋</span></strong>みたいなものですね。</p>



<p class="wp-block-paragraph">さらにその変数を使用して計算や比較など行うことができる優れものです。<br>とても便利な知識になってるので是非参考にしてみてください。</p>



<p class="wp-block-paragraph">それでは見ていきましょう。</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">■変数の宣言の方法</a></li><li><a href="#toc3" tabindex="0">■変数に数値・文字の格納</a></li><li><a href="#toc4" tabindex="0">■変数の活用</a></li><li><a href="#toc5" tabindex="0">&#x2b1b;︎公式の説明 </a></li><li><a href="#toc6" tabindex="0">■まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">■変数の一覧</span></h2>



<p class="wp-block-paragraph">よく使用されるものから順に説明します。</p>



<figure class="wp-block-table is-style-regular"><table><thead><tr><th><strong>変数</strong></th><th><strong>型名</strong></th><th><strong>内容・範囲</strong></th></tr></thead><tbody><tr><td>Variant</td><td>バリアント型</td><td>すべてのデータ</td></tr><tr><td>String</td><td>文字列型</td><td>文字列</td></tr><tr><td>Long</td><td>長整数</td><td>-2,147,483,648～2,147,483,647の整数</td></tr><tr><td>Integer</td><td>整数型</td><td>-32,768～32,767の整数</td></tr><tr><td>Byte</td><td>バイト型</td><td>0～255までの整数</td></tr><tr><td>Currency</td><td>通貨型</td><td>-922,337,203,685,477.5808 ～ 922,337,203,685,477.5807小数点数</td></tr><tr><td>Date</td><td>日付型</td><td>西暦100年1月1日～西暦9999年12月31日時刻</td></tr><tr><td>Object</td><td>オブジェクト型</td><td>オブジェクト</td></tr><tr><td>Boolesn</td><td>ブール型</td><td>TrueまたはFalse</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Single、Doubleなどもありますが、ほとんど使用しません。</p>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">ここでは</p>



<p class="wp-block-paragraph"><span class="marker-red"><strong>文字＝String<br>整数＝Long<br>小数点あり数値・配列・その他＝Variant</strong></span></p>



<p class="wp-block-paragraph">これだけでプログラムは成り立ちます。<br>初めはこの３つを覚えておけば問題はありません。</p>



<p class="wp-block-paragraph">必要に応じでほかの変数は使用してみてください。</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc2">■変数の宣言の方法</span></h2>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">次に変数の宣言方法についてです。</p>



<p class="wp-block-paragraph">宣言については&#8230;</p>



<p class="wp-block-paragraph"><span class="marker-under"><strong><span class="fz-28px">Dim <span class="bold-red">変数の名前</span>　As 変数の型</span></strong></span></p>



<p class="wp-block-paragraph">このように宣言します。</p>



<p class="wp-block-paragraph"><span class="bold-red">変数の名前</span>はA.B.Cでも　「あ」「い」「う」でも、なんでも構いません。<br>ただし、数値のみの変数名はエラーになってしまいます。</p>



<p class="wp-block-paragraph"></p>



<figure class="wp-block-image size-large"><img decoding="async" width="502" height="223" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-18.png" alt="" class="wp-image-442" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-18.png 502w, https://dokugakuexcel.com/wp-content/uploads/2021/07/image-18-300x133.png 300w" sizes="(max-width: 502px) 100vw, 502px" /></figure>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">なので数値を使用したい場合は「A1」のように文字列を入れないといけません。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="218" height="137" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-19.png" alt="" class="wp-image-443"/></figure>



<p class="wp-block-paragraph">これならエラーになりませんね。</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc3">■変数に数値・文字の格納</span></h2>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">では実際に変数に数値を入れてみます。</p>



<p class="wp-block-paragraph">今回は「A」と「B」に数値<br>「あ」と「い」に文字を入れてみます。</p>



<p class="wp-block-paragraph">変数への宣言はこのようになります。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="554" height="376" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-20.png" alt="" class="wp-image-444" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-20.png 554w, https://dokugakuexcel.com/wp-content/uploads/2021/07/image-20-300x204.png 300w" sizes="(max-width: 554px) 100vw, 554px" /></figure>



<p class="wp-block-paragraph"></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 変数の宣言()</p><p>Dim A As Long &#8216;数値の変数1<br>Dim B As Long &#8216;数値の変数2</p><p>Dim あ As String &#8216;文字の変数1<br>Dim い As String &#8216;文字の変数2</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">これにより「A」と「Ｂ」には数値を、「あ」と「い」には文字を入れれるようになりました。</p>



<p class="wp-block-paragraph">次に実際に数値を変数に入れてみます。<br>入れる方法はとても簡単です。</p>



<p class="wp-block-paragraph">変数名＝入れたい文字・数値</p>



<p class="wp-block-paragraph">これで大丈夫です。</p>



<p class="wp-block-paragraph">つまり「A」に3、「B」に5<br>「あ」に独学、「い」にエクセルを入れるとするとこのようになります。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="512" height="422" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-21.png" alt="" class="wp-image-445" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-21.png 512w, https://dokugakuexcel.com/wp-content/uploads/2021/07/image-21-300x247.png 300w" sizes="(max-width: 512px) 100vw, 512px" /></figure>



<p class="wp-block-paragraph"></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 変数の宣言()</p><p>Dim A As Long &#8216;数値の変数1<br>Dim B As Long &#8216;数値の変数2</p><p>Dim あ As String &#8216;文字の変数1<br>Dim い As String &#8216;文字の変数2</p><p>A = 3<br>B = 5</p><p>あ = &#8220;独学&#8221;<br>い = &#8220;エクセル&#8221;</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">文字に関しては「”」で挟むのを忘れないでください。</p>



<p class="wp-block-paragraph">１度この状態で1行づつ実行してみましょう。<br>一行づつの実行方法についてはこちらから☟</p>



<p class="wp-block-paragraph"><a href="https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-5%e3%80%91%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%a0%e3%81%ae%e5%ae%9f%e8%a1%8c%e3%82%92%e3%81%99%e3%82%8b/">【VBA知識 5】プログラムを１行ずづ実行・すべて実行をする方法 &#8211; 独学エクセル塾 (dokugakuexcel.com)</a></p>



<figure class="wp-block-image size-large"><img decoding="async" width="297" height="279" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-22.png" alt="" class="wp-image-446"/></figure>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">この状態で変数名にカーソルを合わせると現在、どのような数値が入っているか確認できます。<br>現在は「あ」にカーソルを合わせているのですが「独学」が入っていることが確認できました。</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc4">■変数の活用</span></h2>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">それでは格納した変数を実際に活用してみましょう。</p>



<p class="wp-block-paragraph">まず、B2に「変数A」×「変数B」を表示します。答えが3*5なので15になれば成功です。<br>次にB4には「変数あ」と「変数い」の文字をつなげてみましょう。<br>それぞれ、「独学」と「エクセル」の文字が入っているので「独学エクセル」で成功です。</p>



<p class="wp-block-paragraph">プログラムはこのようになります。</p>



<p class="wp-block-paragraph"></p>



<figure class="wp-block-image size-large"><img decoding="async" width="466" height="348" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-23.png" alt="" class="wp-image-447" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-23.png 466w, https://dokugakuexcel.com/wp-content/uploads/2021/07/image-23-300x224.png 300w" sizes="(max-width: 466px) 100vw, 466px" /></figure>



<p class="wp-block-paragraph"></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 変数の宣言()</p><p>Dim A As Long &#8216;数値の変数1<br>Dim B As Long &#8216;数値の変数2</p><p>Dim あ As String &#8216;文字の変数1<br>Dim い As String &#8216;文字の変数2</p><p>A = 3<br>B = 5</p><p>あ = &#8220;独学&#8221;<br>い = &#8220;エクセル&#8221;</p><p>Cells(2, 2) = A * B &#8216;Cells(2,2)はRange(&#8220;B2&#8221;)でも同等<br>Cells(4, 2) = あ &amp; い &#8216;Cells(4,2)はRange(&#8220;B4&#8221;)でも同等</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">では実行してみましょう。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="270" height="136" src="https://dokugakuexcel.com/wp-content/uploads/2021/07/image-24.png" alt="" class="wp-image-448"/></figure>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">うまく出力することができました。</p>



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



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



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



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph"><a href="https://learn.microsoft.com/ja-jp/office/vba/language/concepts/getting-started/declaring-variables">変数を宣言する (VBA) | Microsoft Learn</a></p>



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



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">内容は以上です。<br>VBAを学ぶ上で欠かせない変数でしたが、いかがだったでしょうか。</p>



<p class="wp-block-paragraph">変数の種類は多いですが使用するものは限られています。<br>用途によって使い分けてみてください。</p>



<p class="wp-block-paragraph"></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-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知識 7】FOR…NEXTで指定した数値で繰り返し・ループ動作をする。 ► 独学エクセル塾 (dokugakuexcel.com)</a></p>



<p class="wp-block-paragraph"></p>



<p class="has-text-align-center wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-6%e3%80%91%e5%a4%89%e6%95%b0%e3%81%a8%e3%81%af%e5%a4%89%e6%95%b0%e3%81%ae%e4%b8%80%e8%a6%a7%e3%81%a8%e6%84%8f%e5%91%b3%e3%83%bb%e5%a4%89%e6%95%b0%e3%81%ae%e5%ae%a3/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">441</post-id>	</item>
		<item>
		<title>【マクロVBA知識 高速化②】あまり知られていない？大量データで処理が遅いマクロVBAを配列で高速化</title>
		<link>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-%e9%ab%98%e9%80%9f%e5%8c%96%e2%91%a1%e3%80%91%e3%81%82%e3%81%be%e3%82%8a%e7%9f%a5%e3%82%89%e3%82%8c%e3%81%a6%e3%81%84%e3%81%aa%e3%81%84%ef%bc%9f%e5%a4%a7%e9%87%8f/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590vba%25e7%259f%25a5%25e8%25ad%2598-%25e9%25ab%2598%25e9%2580%259f%25e5%258c%2596%25e2%2591%25a1%25e3%2580%2591%25e3%2581%2582%25e3%2581%25be%25e3%2582%258a%25e7%259f%25a5%25e3%2582%2589%25e3%2582%258c%25e3%2581%25a6%25e3%2581%2584%25e3%2581%25aa%25e3%2581%2584%25ef%25bc%259f%25e5%25a4%25a7%25e9%2587%258f</link>
					<comments>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-%e9%ab%98%e9%80%9f%e5%8c%96%e2%91%a1%e3%80%91%e3%81%82%e3%81%be%e3%82%8a%e7%9f%a5%e3%82%89%e3%82%8c%e3%81%a6%e3%81%84%e3%81%aa%e3%81%84%ef%bc%9f%e5%a4%a7%e9%87%8f/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Tue, 29 Jun 2021 12:48:45 +0000</pubDate>
				<category><![CDATA[高速化]]></category>
		<category><![CDATA[マクロVBA応用・便利技]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[VBA高速化]]></category>
		<category><![CDATA[Variant]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=318</guid>

					<description><![CDATA[今回はVBAの高速化について説明します。皆さんは作成したマクロVBAの処理速度が遅くなったことはないでしょうか。 今回はその悩みを解決する第2弾となっています。 前回の内容を合わせると効果はさらに見込めます。 前回の記事 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">今回は<strong><span class="marker-under">VBAの高速化について</span></strong>説明します。<br>皆さんは作成したマクロVBAの処理速度が遅くなったことはないでしょうか。</p>



<p class="wp-block-paragraph">今回はその悩みを解決する第2弾となっています。</p>



<p class="wp-block-paragraph">前回の内容を合わせると効果はさらに見込めます。</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-%e9%ab%98%e9%80%9f%e5%8c%96%e2%91%a0%e3%80%91vba%e9%ab%98%e9%80%9f%e5%8c%96%e3%81%b8%e3%81%ae%e9%81%93%e3%83%bb%e9%ab%98%e9%80%9f3%e7%a8%ae%e3%81%ae%e7%a5%9e%e5%99%a8/">【VBA知識 高速化①】画面更新・自動計算・イベントのOFFについて（VBA高速3種の神器） &#8211; 独学エクセル塾 (dokugakuexcel.com)</a></p>



<p class="wp-block-paragraph">それでは見ていきましょう。</p>



<p class="wp-block-paragraph"></p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">■高速化の内容</a></li><li><a href="#toc2" tabindex="0">■比較用プログラムの説明</a></li><li><a href="#toc3" tabindex="0">■変数内で記録する</a></li><li><a href="#toc4" tabindex="0">■変更前と比較</a></li><li><a href="#toc5" tabindex="0">■高速化①と今回の対策の混合結果</a></li><li><a href="#toc6" tabindex="0">■まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">■高速化の内容</span></h2>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">今回の解決策はVariant変数を使用し、変数内で集計します。<br>そして集計結果を最後にまとめて表示する仕組みです。</p>



<p class="wp-block-paragraph">処理が遅くなる要因としてセルの値を毎回読み取っている場合があります。<br>そこで変数内で計算させることで<br>読み込みがなくなり、早くなるというわけです。</p>



<p class="wp-block-paragraph">人で表すと、いちいち紙に書いて計算している作業を頭で考えてまとめて記入するイメージです。</p>



<p class="wp-block-paragraph">では実際に検証してみましょう。</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc2">■比較用プログラムの説明</span></h2>



<p class="wp-block-paragraph">今回も高速化①で使用したシートを用いていきます。<br>高速化①をご覧になられた方は次の目次へどうぞ。</p>



<p class="wp-block-paragraph">では検証用のプログラムについて説明します。<br>A・B行に100000行、ランダムなデータがある状態です。</p>



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



<p class="wp-block-paragraph">データの処理方法としてA1とB1の数値をかけてC1に出力する仕組みとします。<br>その処理を100000行繰り返すのにかかった時間を基準としましょう。</p>



<p class="wp-block-paragraph">用意したプログラムがこちら。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="696" height="453" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-142.png" alt="" class="wp-image-320" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-142.png 696w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-142-300x195.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-142-92x60.png 92w" sizes="(max-width: 696px) 100vw, 696px" /></figure>



<p class="wp-block-paragraph">一応、コピーできるように貼っておきます。</p>



<p class="wp-block-paragraph"></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 高速化①()</p><p>Dim Time1 As Double, Time2 As Double, Result As Double<br>Dim A As Long</p><p>Time1 = Timer</p><p>&#8221;&#8221;計算開始<br>For A = 1 To 100000 Step 1</p><p>     Cells(A, 3) = Cells(A, 1) * Cells(A, 2)</p><p>Next A<br>&#8221;&#8221;計算終わり</p><p>Time2 = Timer</p><p>Result = Time2 &#8211; Time1<br>MsgBox Result &amp; &#8220;秒で処理しました&#8221;</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph">では実行してみましょう。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="450" height="346" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-143.png" alt="" class="wp-image-321" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-143.png 450w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-143-300x231.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-143-78x60.png 78w" sizes="(max-width: 450px) 100vw, 450px" /></figure>



<p class="wp-block-paragraph">3.62秒かかりましたね。これを元に早くしていきます。</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc3">■変数内で記録する</span></h2>



<p class="wp-block-paragraph">ではA行とB行で計算した値をVariant関数内で記録してみましょう。</p>



<p class="wp-block-paragraph">一度、Variant関数内に使用したい範囲の空白セルを入れておきます。<br>この作業をしないとエラーになります。<br>今回はA行*B行の結果の１列だけでいいので、１列分100000行をVariant内に空白として入れます。</p>



<p class="wp-block-paragraph"><strong><em>Dim N As Vriant<br>N = Range(Cells(1, 3), Cells(100000, 3))</em></strong></p>



<p class="wp-block-paragraph">今回は３列目を使用して空白を入れてますが、計算結果値を上書きするので何列目でも構いません。</p>



<p class="wp-block-paragraph">そして計算結果値をVariant内に入れます。</p>



<p class="wp-block-paragraph"><strong><em>N(A, 1) = Cells(A, 1) * Cells(A, 2)</em></strong></p>



<p class="wp-block-paragraph">これを100000行繰り返し、最後に出力する流れです。</p>



<p class="wp-block-paragraph"><strong><em>Range(Cells(1, 3), Cells(100000, 3)) = N</em></strong></p>



<p class="wp-block-paragraph">こちらをプログラムに入れていきます。</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc4">■変更前と比較</span></h2>



<p class="wp-block-paragraph">変更後のプログラムはこちら。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="712" height="593" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-144.png" alt="" class="wp-image-322" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-144.png 712w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-144-300x250.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-144-72x60.png 72w" sizes="(max-width: 712px) 100vw, 712px" /></figure>



<p class="wp-block-paragraph">このようになりました。<br>またまたコピー用載せておきます。</p>



<p class="wp-block-paragraph"></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 高速化②()</p><p>Dim Time1 As Double, Time2 As Double, Result As Double<br>Dim A As Long, N As Variant</p><p>Time1 = Timer</p><p>&#8221;&#8221;計算開始</p><p>    N = Range(Cells(1, 3), Cells(100000, 3))</p><p>For A = 1 To 100000 Step 1</p><p>    N(A, 1) = Cells(A, 1) * Cells(A, 2)</p><p>Next A</p><p>   Range(Cells(1, 3), Cells(100000, 3)) = N</p><p>&#8221;&#8221;計算終わり</p><p>Time2 = Timer</p><p>Result = Time2 &#8211; Time1<br>MsgBox Result &amp; &#8220;秒で処理しました&#8221;</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">それでは実行してみましょう。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="442" height="372" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-145.png" alt="" class="wp-image-323" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-145.png 442w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-145-300x252.png 300w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-145-71x60.png 71w" sizes="(max-width: 442px) 100vw, 442px" /></figure>



<p class="wp-block-paragraph">結果が出ました！</p>



<p class="wp-block-paragraph">3.62秒から0.78秒と2.84秒短縮しました。<br>結果的に78%短縮短縮です。<br>驚異的ですよね…</p>



<p class="wp-block-paragraph">では高速化①の対策も合わせてみましょう。</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc5">■高速化①と今回の対策の混合結果</span></h2>



<p class="wp-block-paragraph">高速化①で行った、画面更新・自動計算・イベントをOFFも追加してみましょう。</p>



<p class="wp-block-paragraph">追加したプログラムがこちら。</p>



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



<p class="wp-block-paragraph"></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 高速化①②()</p><p>Application.ScreenUpdating = False &#8221;画面更新をOFF<br>Application.Calculation = xlManual &#8221;自動計算をOF<br>Application.EnableEvents = False &#8221;イベントをOFF</p><p>Dim Time1 As Double, Time2 As Double, Result As Double<br>Dim A As Long, N As Variant</p><p>Time1 = Timer</p><p>&#8221;&#8221;計算開始</p><p>　　　N = Range(Cells(1, 3), Cells(100000, 3))</p><p>For A = 1 To 100000 Step 1</p><p>　　　N(A, 1) = Cells(A, 1) * Cells(A, 2)</p><p>Next A</p><p>　　　Range(Cells(1, 3), Cells(100000, 3)) = N</p><p>&#8221;&#8221;計算終わり</p><p>Time2 = Timer</p><p>Result = Time2 &#8211; Time1<br>MsgBox Result &amp; &#8220;秒で処理しました&#8221;</p><p>Application.ScreenUpdating = True &#8221;画面更新をON<br>Application.Calculation = xlAutomatic &#8221;自動計算をON<br>Application.EnableEvents = True &#8221;イベントをON</p><p>End Sub</p></blockquote>



<p class="wp-block-paragraph">　　　　</p>



<p class="wp-block-paragraph">実行してみます。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="218" height="170" src="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-147.png" alt="" class="wp-image-325" srcset="https://dokugakuexcel.com/wp-content/uploads/2021/06/image-147.png 218w, https://dokugakuexcel.com/wp-content/uploads/2021/06/image-147-77x60.png 77w" sizes="(max-width: 218px) 100vw, 218px" /></figure>



<p class="wp-block-paragraph">3.62秒→0.78秒→0.71秒<br>すごく早くなりましたね！</p>



<p class="wp-block-paragraph">高速化①の内容は有名ですがこちらの内容はあまり有名ではない便利な技です！</p>



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



<p class="wp-block-paragraph">いかがだったでしょうか。<br>計算で処理速度が遅い場合はぜひ試してみてください。</p>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">配列はとても便利な機能なので配列の活用についてもご参考にしてみてください。</p>



<p class="wp-block-paragraph"><a href="https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%80%91%e8%a4%87%e6%95%b0%e3%81%ae%e7%b9%b0%e3%82%8a%e8%bf%94%e3%81%97%e3%81%ae%e3%82%b3%e3%83%94%e3%83%bc%e3%83%9a%e3%83%bc%e3%82%b9%e3%83%88%e3%81%8c/">【マクロVBA】複数の繰り返しのコピー&amp;ペーストが面倒くさい!?高速で一括で貼り付けできる配列とは ► 独学エクセル塾 (dokugakuexcel.com)</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://dokugakuexcel.com/%e3%80%90vba%e7%9f%a5%e8%ad%98-%e9%ab%98%e9%80%9f%e5%8c%96%e2%91%a1%e3%80%91%e3%81%82%e3%81%be%e3%82%8a%e7%9f%a5%e3%82%89%e3%82%8c%e3%81%a6%e3%81%84%e3%81%aa%e3%81%84%ef%bc%9f%e5%a4%a7%e9%87%8f/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">318</post-id>	</item>
	</channel>
</rss>
