<?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/%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0/feed/" rel="self" type="application/rss+xml" />
	<link>https://dokugakuexcel.com</link>
	<description>初心者から中級者までシステム・関数・VBAを伝授します</description>
	<lastBuildDate>Mon, 17 Oct 2022 13:33:19 +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>ユーザーフォーム  |  独学エクセル塾</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エラー対応】ユーザーフォームのShowでFunctionまたは変数が必要ですの対応法</title>
		<link>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%82%a8%e3%83%a9%e3%83%bc%e5%af%be%e5%bf%9c%e3%80%91%e3%83%a6%e3%83%bc%e3%82%b6%e3%83%bc%e3%83%95%e3%82%a9%e3%83%bc%e3%83%a0%e3%81%aeshow%e3%81%a7function/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e3%2580%2590%25e3%2583%259e%25e3%2582%25af%25e3%2583%25advba%25e3%2582%25a8%25e3%2583%25a9%25e3%2583%25bc%25e5%25af%25be%25e5%25bf%259c%25e3%2580%2591%25e3%2583%25a6%25e3%2583%25bc%25e3%2582%25b6%25e3%2583%25bc%25e3%2583%2595%25e3%2582%25a9%25e3%2583%25bc%25e3%2583%25a0%25e3%2581%25aeshow%25e3%2581%25a7function</link>
					<comments>https://dokugakuexcel.com/%e3%80%90%e3%83%9e%e3%82%af%e3%83%advba%e3%82%a8%e3%83%a9%e3%83%bc%e5%af%be%e5%bf%9c%e3%80%91%e3%83%a6%e3%83%bc%e3%82%b6%e3%83%bc%e3%83%95%e3%82%a9%e3%83%bc%e3%83%a0%e3%81%aeshow%e3%81%a7function/?noamp=mobile#comments</comments>
		
		<dc:creator><![CDATA[matsu]]></dc:creator>
		<pubDate>Sun, 27 Feb 2022 13:10:17 +0000</pubDate>
				<category><![CDATA[エラー対策]]></category>
		<category><![CDATA[マクロVBA応用・便利技]]></category>
		<category><![CDATA[エラー]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[マクロ]]></category>
		<category><![CDATA[ユーザーフォーム]]></category>
		<category><![CDATA[Show]]></category>
		<guid isPermaLink="false">https://dokugakuexcel.com/?p=2295</guid>

					<description><![CDATA[本記事はVBAのエラー対応について説明します。今回はユーザーフォームを表示（Show）する際に発生する「Functionまたは変数が必要です」というエラーの原因と対策について紹介したいと思います。 このエラーが発生すると [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>本記事はVBAのエラー対応について説明します。<br>今回はユーザーフォームを表示（Show）する際に発生する<br><strong><span class="marker-under">「Functionまたは変数が必要です」というエラーの原因と対策</span></strong>について紹介したいと思います。</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-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">■「Functionまたは変数が必要です」のエラーの原因と対策法</a></li><li><a href="#toc3" tabindex="0">■まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">■通常のユーザーフォームの表示</span></h2>



<p>まずはエラーが発生しないユーザーフォームの表示を見てみましょう。<br>見本で下図のユーザーフォームを作成してみました。</p>



<figure class="wp-block-image size-full is-resized"><img fetchpriority="high" decoding="async" src="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-82.png" alt="" class="wp-image-2296" width="537" height="252" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-82.png 746w, https://dokugakuexcel.com/wp-content/uploads/2022/02/image-82-300x141.png 300w" sizes="(max-width: 537px) 100vw, 537px" /></figure>



<p>特に変わりないユーザーフォームになってます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="329" height="206" src="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-83.png" alt="" class="wp-image-2297" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-83.png 329w, https://dokugakuexcel.com/wp-content/uploads/2022/02/image-83-300x188.png 300w" sizes="(max-width: 329px) 100vw, 329px" /></figure>



<p>ここで注目してほしいのは<strong><span class="marker-under-red">「オブジェクト名」</span></strong>です。<br>ではこちらのユーザーフォームを表示するだけのマクロVBAのプログラムを見てみましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Sub ユーザーフォームを表示()</strong></p><p><strong><span class="marker-under-red">更新中</span>.Show</strong></p><p><strong>End Sub</strong></p></blockquote>



<p>とてもシンプルですね。<br><strong><span class="marker-under-red">更新中のユーザーフォームを表示する</span></strong>ので<br><strong><span class="bold-red"><span class="marker-under-red">更新中.Show</span></span></strong><br>というプログラムです。</p>



<p>では実行してみましょう。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-84.png" alt="" class="wp-image-2298" width="533" height="284" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-84.png 929w, https://dokugakuexcel.com/wp-content/uploads/2022/02/image-84-300x160.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/02/image-84-768x409.png 768w" sizes="(max-width: 533px) 100vw, 533px" /></figure>



<p>問題なくユーザーフォームを表示することができました。</p>



<h2 class="wp-block-heading"><span id="toc2">■「Functionまたは変数が必要です」のエラーの原因と対策法</span></h2>



<p>では本題に移りたいと思います。<br>下記のマクロVBAのプログラムをご覧ください。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Sub 更新中()</strong></p><p><strong>更新中.Show</strong></p><p><strong>End Sub</strong></p></blockquote>



<p>一見問題なさそうなプログラムですよね。<br>では実行してみましょう。すると下記のようなエラーが表示されました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-85.png" alt="" class="wp-image-2299" width="426" height="236" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-85.png 524w, https://dokugakuexcel.com/wp-content/uploads/2022/02/image-85-300x166.png 300w, https://dokugakuexcel.com/wp-content/uploads/2022/02/image-85-160x90.png 160w" sizes="(max-width: 426px) 100vw, 426px" /></figure>



<p>ここでお気づきの方もおられると思いますが<br><strong><span class="marker-under">実行プログラム自体は先ほどの見本では実行できたことから何も問題ありません</span></strong>。</p>



<p>では正常に機能するプログラムとエラーが発生するプログラムを見比べてみましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong><span class="bold-blue"><span class="fz-24px"><span class="fz-22px">正常のマクロVBAのプログラム</span></span></span></strong></p><p>Sub <strong><span class="marker-under-blue">ユーザーフォームを表示</span></strong>()</p><p><strong><span class="marker-under-red">更新中</span></strong>.Show</p><p>End Sub</p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong><span class="bold-red"><span class="fz-22px">異常のマクロVBAのプログラム</span></span></strong></p><p>Sub<span class="marker-under-red"> <strong>更新中</strong></span>()</p><p><strong><span class="marker-under-red">更新中</span></strong>.Show</p><p>End Sub</p></blockquote>



<p>お分かりいただけましたでしょうか。</p>



<p>正常であるプログラムはプログラム名が「ユーザーフォームを表示」で「更新中」のユーザーフォームを表示させてますが、エラーが発生するプログラムは「更新中」というプログラム名で「更新中」のユーザーフォームを表示させてます。</p>



<p>つまり、<strong><span class="marker-under-red">エラーの原因は「オブジェクト名とプログラム名が一緒」である</span></strong>ことがわかります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="716" height="206" src="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-86.png" alt="" class="wp-image-2300" srcset="https://dokugakuexcel.com/wp-content/uploads/2022/02/image-86.png 716w, https://dokugakuexcel.com/wp-content/uploads/2022/02/image-86-300x86.png 300w" sizes="(max-width: 716px) 100vw, 716px" /></figure>



<p>なので<strong><span class="marker-under-blue">対策としてはオブジェクト名とプログラム名は同じでないこと</span></strong>が正常のプログラムに欠かせません。</p>



<p>どうしても同じ名前で付けたい場合は下記プログラムのように1文字でも付け加えるだけで正常に動いてくれます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Sub 更新中1()</p><p>更新中.Show</p><p>End Sub</p></blockquote>



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



<p>いかがだったでしょうか。<br>私もユーザーフォームを使用し始めたときに同じエラーが発生して<br>対策方法がわからず試行錯誤して判明しました。</p>



<p>現在はプログラム名の後に作成した年月日を番号で入力しているので<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%82%a8%e3%83%a9%e3%83%bc%e5%af%be%e5%bf%9c%e3%80%91%e3%83%a6%e3%83%bc%e3%82%b6%e3%83%bc%e3%83%95%e3%82%a9%e3%83%bc%e3%83%a0%e3%81%aeshow%e3%81%a7function/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2295</post-id>	</item>
	</channel>
</rss>
