<?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>メモリ不足です。 アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<atom:link href="https://nyanblog2222.com/tag/%E3%83%A1%E3%83%A2%E3%83%AA%E4%B8%8D%E8%B6%B3%E3%81%A7%E3%81%99%E3%80%82/feed/" rel="self" type="application/rss+xml" />
	<link>https://nyanblog2222.com/tag/メモリ不足です。/</link>
	<description>ちょっとしたことを調べているよ</description>
	<lastBuildDate>Thu, 11 Nov 2021 11:52:43 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7</generator>

<image>
	<url>https://nyanblog2222.com/wp-content/uploads/2021/09/cropped-favicon-32x32.png</url>
	<title>メモリ不足です。 アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<link>https://nyanblog2222.com/tag/メモリ不足です。/</link>
	<width>32</width>
	<height>32</height>
</image> 
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/><atom:link rel="hub" href="https://websubhub.com/hub"/>	<item>
		<title>【Access】メモリ不足です。【対処方法・原因】</title>
		<link>https://nyanblog2222.com/office/access/3359/</link>
					<comments>https://nyanblog2222.com/office/access/3359/#respond</comments>
		
		<dc:creator><![CDATA[nyan2222]]></dc:creator>
		<pubDate>Wed, 26 May 2021 22:59:53 +0000</pubDate>
				<category><![CDATA[Access]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[メモリ不足です。]]></category>
		<guid isPermaLink="false">https://nyanblog2222.com/?p=3359</guid>

					<description><![CDATA[<p><img src="https://nyanblog2222.com/wp-content/uploads/2022/11/41.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" fetchpriority="high" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/41.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/41-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/41-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/41-768x402.png 768w" sizes="(max-width: 1280px) 100vw, 1280px" />今回はAccessのクエリやマクロを使用した際に、 「メモリ不足です。」 と突然エラーコードがでてしまった場合の対処方法を紹介します。 目次 エラーの原因は？どんな状況で発生する？対処方法Accessファイルの最適化（手 [&#8230;]</p>
<p>投稿 <a href="https://nyanblog2222.com/office/access/3359/">【Access】メモリ不足です。【対処方法・原因】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<img src="https://nyanblog2222.com/wp-content/uploads/2022/11/41.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/41.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/41-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/41-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/41-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />
<p>今回はAccessのクエリやマクロを使用した際に、 <br><span class="marker-under-red"><span class="marker-under-red">「<span class="marker-under-red">メモリ不足です。</span>」</span></span> と突然エラーコードがでてしまった場合の対処方法を紹介します。</p>



<p><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/05/2021052301.jpg" alt="メモリ不足です。" width="202" height="107" class="alignnone wp-image-3361 size-full"></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">対処方法</a></li><li><a href="#toc3" tabindex="0">Accessファイルの最適化（手動）</a></li><li><a href="#toc4" tabindex="0">Accessファイルの最適化（自動）</a></li><li><a href="#toc5" tabindex="0">備考：「メモリ不足です。」エラーを再現するには</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">エラーの原因は？どんな状況で発生する？</span></h2>



<p>エラーメッセージが「メモリ」とあるので<span class="marker-under">パソコンのメモリと勘違いしやすい</span>ですが、<br>原因は<span class="marker-under">クエリやマクロを使用した際に、<span class="marker-under">Accessファイルが2GBを超えてしまうため</span></span><span class="marker-under">です。<br></span><span class="marker-under"></span></p>



<p><span class="marker-under">Accessはファイル全体で最大2GBという制限があります。<br></span>私の場合、大規模データを扱うAccessの改修中、<br>突然「メモリ不足です。」と出て、 以下の対処をすることで解決できました。</p>



<p><strong class="brown_color">＜効果のあったこと＞<br></strong><span>・Accessファイルの最適化</span></p>



<p><strong class="brown_color">＜効果のなかったこと＞<br></strong>・メモリを8GBから16GBに増設<br>・仮想メモリを付与<br>・<span>MaxLocksPerFileというトランザクション処理の最大値を変更<br>・パソコン再起動<br>・Accessファイルの修復　等</span></p>



<h2 class="wp-block-heading"><span id="toc2">対処方法</span></h2>



<p>今回のエラーの原因が、<span class="marker-under">Accessファイルが2GBを超過することにあるため、<br></span>対処方法は以下のファイルサイズ対策になります。</p>



<ul class="wp-block-list"><li><strong class="brown_color">Accessファイルの最適化（おすすめ！）<br></strong>（手動・自動による最適化）<br>Accessファイルを最適化することで、不要な領域を整理する<br>メリット：簡単で、今まで通り利用できる<br>デメリット：最適化しても容量が2GBを超える場合対応できない<strong class="brown_color"> </strong></li><li><strong class="brown_color">Accessファイルの分割<br></strong>Accessファイルのデータを別のAccessファイルに作り、リンクテーブルで連携する。<br>例）AccessAはAテーブル、AccessBはBテーブル。AccessAからBのリンクテーブルを貼る<br><span>メリット：すべてのテーブル容量の合計が2GBを超過しても使用できる<br>デメリット：個々のテーブル容量が2GBを超過すると使えない</span></li><li><strong class="brown_color">DB構築<br></strong>SQLServerや<span>PostgresなどDBを構築し、 データはDBからリンクテーブルで利用、編集や更新等はAccessで行う<br>メリット：テーブルの容量が2GBを超過しても使用できる<br>デメリット：DB構築は少しハードルが高い</span></li></ul>



<p>ただ、「メモリ不足です。」エラーが出る場合、単純に最適化ができていないことが多いため、 次項からは<span class="marker-under">Accessファイルの最適化</span>だけに絞って説明します。</p>



<h2 class="wp-block-heading"><span id="toc3">Accessファイルの最適化（手動）</span></h2>



<p><span class="marker-under">手動で最適化</span>する方法です。<br>最適化は数分程度かかることもあるため、ユーザーの都合のいいときに最適化できます。<br>デメリットは意識的に行わないとならないことです。</p>



<p>方法は、「ファイル」→「情報」から、「データベースの最適化／修復」を選択するだけです。</p>



<p><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-17_No-00.jpg" alt="最適化" width="800" height="452" class="alignnone wp-image-3368 size-full" srcset="https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-17_No-00.jpg 800w, https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-17_No-00-300x170.jpg 300w, https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-17_No-00-768x434.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /> 押すと、最適化が開始され、右下にメッセージが現れます。 <img loading="lazy" decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-28-23_No-00.jpg" alt="" width="451" height="44" class="alignnone size-full wp-image-3370" srcset="https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-28-23_No-00.jpg 451w, https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-28-23_No-00-300x29.jpg 300w" sizes="auto, (max-width: 451px) 100vw, 451px" /></p>



<h2 class="wp-block-heading"><span id="toc4">Accessファイルの最適化（自動）</span></h2>



<p><span class="marker-under">自動で最適化</span>する方法です。<br>Accessファイルを閉じる際に、毎回最適化されるのでユーザーは意識せず最適化できます。<br>デメリットとしては、毎回最適化に時間がかかることや、<br>複数ユーザーで頻繁に使用すると破損するリスクがあるため、あまり使用しない方がいいという意見もあります。</p>



<p>方法は、「ファイル」→「Accessのオプション」から、「閉じるときに最適化する」を選択するだけです。</p>



<p><img loading="lazy" decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-47_No-00.jpg" alt="最適化" width="800" height="579" class="alignnone wp-image-3369 size-full" srcset="https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-47_No-00.jpg 800w, https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-47_No-00-300x217.jpg 300w, https://nyanblog2222.com/wp-content/uploads/2021/05/SnapCrab_NoName_2021-5-23_15-14-47_No-00-768x556.jpg 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p>



<h2 class="wp-block-heading"><span id="toc5">備考：「メモリ不足です。」エラーを再現するには</span></h2>



<p>まず、以下のコードを実行して、2GB弱のデータを作ります。<br>（コード自体は2GB以上作ろうとするので、処理の途中でAccessが固まる or エラーになります）<br>コードは、<a href="https://docs.microsoft.com/ja-jp/office/troubleshoot/access/error-when-perform-operation-on-table">「Microsoft Docs：Access テーブルで操作を実行すると、&#8221;ディスク領域またはメモリが足りない&#8221; というエラーが発生する」</a>を参考にしています。</p>



<pre class="wp-block-code basic"><code>Sub CreateBigTable()
　　Dim db As Database, rs As Recordset
　　Dim iCounter As Long, strChar As String
　　Set db = CurrentDb
　　db.Execute "CREATE TABLE BigTable (ID LONG, Field1 TEXT(255), " &amp; _
　　　　"Field2 TEXT(255), Field3 TEXT(255), Field4 TEXT(255))", _
　　　　dbFailOnError
　　Set rs = db.OpenRecordset("BigTable", dbOpenDynaset)
　　iCounter = 0
　　strChar = String(255, " ")
　　While iCounter &lt;= 100000000
　　　　rs.AddNew
　　　　rs!ID = iCounter
　　　　rs!Field1 = strChar
　　　　rs!Field2 = strChar
　　　　rs!Field3 = strChar
　　　　rs!Field4 = strChar
　　　　rs.Update
　　　　iCounter = iCounter + 1
　　Wend
　　MsgBox "Done!"
End Sub</code></pre>



<p><img loading="lazy" decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2021/05/2021052302.jpg" alt="2GB" width="421" height="580" class="alignnone wp-image-3362 size-full" srcset="https://nyanblog2222.com/wp-content/uploads/2021/05/2021052302.jpg 421w, https://nyanblog2222.com/wp-content/uploads/2021/05/2021052302-218x300.jpg 218w" sizes="auto, (max-width: 421px) 100vw, 421px" /></p>



<p>次に、できたテーブルを使用してクエリを作成し、動作させると 「メモリ不足です。」のエラーが再現できます。</p>
<p>投稿 <a href="https://nyanblog2222.com/office/access/3359/">【Access】メモリ不足です。【対処方法・原因】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nyanblog2222.com/office/access/3359/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
