<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Tony's Microsoft Access Blog : Access</title><link>http://msmvps.com/blogs/access/archive/tags/Access/default.aspx</link><description>Tags: Access</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Access and PowerShell</title><link>http://msmvps.com/blogs/access/archive/2009/11/27/access-and-powershell.aspx</link><pubDate>Fri, 27 Nov 2009 17:21:36 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1742533</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1742533</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1742533</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/11/27/access-and-powershell.aspx#comments</comments><description>&lt;p&gt;Fellow &lt;a href="https://mvp.support.microsoft.com/profile/Richard.Siddaway" target="_blank"&gt;MVP Richard Siddaway&lt;/a&gt; has started a very &lt;a href="http://msmvps.com/blogs/richardsiddaway/archive/tags/Access/default.aspx" target="_blank"&gt;interesting series of blog postings on using PowerShell and Access&lt;/a&gt;.&amp;#160;&amp;#160; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1742533" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/PowerShell/default.aspx">PowerShell</category></item><item><title>Jackcess is a pure Java library for reading from and writing to MS Access databases.</title><link>http://msmvps.com/blogs/access/archive/2009/10/24/jackcess-is-a-pure-java-library-for-reading-from-and-writing-to-ms-access-databases.aspx</link><pubDate>Sat, 24 Oct 2009 21:51:45 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1734878</guid><dc:creator>Tony</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1734878</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1734878</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/10/24/jackcess-is-a-pure-java-library-for-reading-from-and-writing-to-ms-access-databases.aspx#comments</comments><description>&lt;p&gt;I just came across this interesting Open Source project - &lt;a href="http://jackcess.sourceforge.net/" target="_blank"&gt;Jackcess is a pure Java library for reading from and writing to MS Access databases.&lt;/a&gt;&amp;#160; Also read the FAQ.&amp;#160; Also note the link to &lt;a href="http://sourceforge.net/projects/mdbtools/" target="_blank"&gt;MDB Tools&lt;/a&gt; which hasn’t been updated since 2004.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1734878" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Jet/default.aspx">Jet</category><category domain="http://msmvps.com/blogs/access/archive/tags/Hard+core/default.aspx">Hard core</category></item><item><title>Jet Engine History</title><link>http://msmvps.com/blogs/access/archive/2009/10/24/jet-engine-history.aspx</link><pubDate>Sat, 24 Oct 2009 21:01:48 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1734869</guid><dc:creator>Tony</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1734869</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1734869</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/10/24/jet-engine-history.aspx#comments</comments><description>&lt;p&gt;A question started a bit of digging and poking about.&amp;#160;&amp;#160; I’ve always been interested in the history of Access and Jet and the code names used way back when such as Cirrus.&amp;#160; The Wiki &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Jet_Database_Engine" target="_blank"&gt;Microsoft Jet Database Engine&lt;/a&gt; article had a footnote referencing a page titled &lt;a href="http://www.avdf.com/nov96/acc_jet.html" target="_blank"&gt;Jet Engine: History&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Regretfully all the links mentioned on that page no longer work.&amp;#160; Although some of the MS white papers mentioned might still be available by digging.&lt;/p&gt;  &lt;p&gt;Which reminds me. There are two versions of the Microsoft Jet Database Engine Programmer&amp;#39;s Guide.&amp;#160;&amp;#160; I have the first edition which is the one with the light blue cloud cover which was sort of the theme of Windows 95.&amp;#160;&amp;#160; I should purchase the &lt;a href="http://www.amazon.com/Microsoft-Database-Programmers-Professional-Editions/dp/1572313420" target="_blank"&gt;second edition which has a white cover&lt;/a&gt; just to ensure it’s part of my collection.&amp;#160; &lt;/p&gt;  &lt;p&gt;And I should spend a few minutes rereading the table of contents just to refresh my memory so if I ever need some information I’ll at least know that it’s available.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1734869" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Jet/default.aspx">Jet</category><category domain="http://msmvps.com/blogs/access/archive/tags/Hard+core/default.aspx">Hard core</category></item><item><title>InStrRev</title><link>http://msmvps.com/blogs/access/archive/2009/09/23/instrrev.aspx</link><pubDate>Wed, 23 Sep 2009 21:32:04 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1726051</guid><dc:creator>Tony</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1726051</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1726051</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/09/23/instrrev.aspx#comments</comments><description>&lt;p&gt;I’ll be darned.&amp;#160; I had no idea &lt;a href="http://msdn.microsoft.com/en-us/library/t2ekk41a%28VS.80%29.aspx" target="_blank"&gt;InStrRev&lt;/a&gt; existed in VBA code.&amp;#160; It is new in Access 2000 so it’s been around for nine years.&amp;#160; &lt;/p&gt;  &lt;p&gt;I had to build this function myself in A2.0 or A97 to get the file name from a string which had the path and file.&amp;#160;&amp;#160; The code needed to find the right most occurrence of “\” back slash.&amp;#160; I’ve been happily using my function ever since.&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;I actually learned something new about Access this year.&amp;#160; &amp;lt;smile&amp;gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1726051" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/access/archive/tags/VBA/default.aspx">VBA</category></item><item><title>Queries and the 3061 "Too few parameters. Expected 1." message</title><link>http://msmvps.com/blogs/access/archive/2009/09/22/queries-and-the-3061-quot-too-few-parameters-expected-1-quot-message.aspx</link><pubDate>Wed, 23 Sep 2009 04:32:14 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1725904</guid><dc:creator>Tony</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1725904</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1725904</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/09/22/queries-and-the-3061-quot-too-few-parameters-expected-1-quot-message.aspx#comments</comments><description>&lt;p&gt;Your query is working just fine referencing a form to select some records:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access.metablogapi/2063.QueryFormParm_5F00_721B66EC.jpg"&gt;&lt;img title="QueryFormParm" style="border-top-width:0px;display:inline;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="115" alt="QueryFormParm" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access.metablogapi/4743.QueryFormParm_5F00_thumb_5F00_73EBBCB3.jpg" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;but when you run it in code you get the dreaded 3061 &amp;quot;Too few parameters. Expected 1.&amp;quot; message.&lt;/p&gt;  &lt;p&gt;One option is to evaluate the Forms![Form name]![Field Name] expression as per the following examples.&lt;/p&gt;  &lt;p&gt;The below example is an execute query.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Set db = CurrentDb      &lt;br /&gt;Set qdf = db.QueryDefs(&amp;quot;LEMBatchesRpt Append to temp table&amp;quot;)       &lt;br /&gt;For i = 0 To qdf.Parameters.Count - 1       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; qdf.Parameters(i) = Eval(qdf.Parameters(i).Name)       &lt;br /&gt;Next i &lt;/p&gt;    &lt;p&gt;qdf.Execute dbFailOnError&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The below example is used in my standard routine which copies the contents of a recordset into an Excel spreadsheet.&amp;#160; Due to the requirements of basing the openrecordset on a query to which I added a Where clause I created a temporary query and then did the parameter evaluation&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;strSQL = &amp;quot;SELECT * FROM [&amp;quot; &amp;amp; strQuery &amp;amp; &amp;quot;]&amp;quot;      &lt;br /&gt;If Len(strWhere) &amp;gt; 0 Then _       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; strSQL = strSQL &amp;amp; &amp;quot; WHERE &amp;quot; &amp;amp; strWhere &amp;amp; &amp;quot;;&amp;quot;       &lt;br /&gt;Set qdf = db.CreateQueryDef(&amp;quot;&amp;quot;, strSQL)       &lt;br /&gt;For i = 0 To qdf.Parameters.Count - 1       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; qdf.Parameters(i) = Eval(qdf.Parameters(i).Name)       &lt;br /&gt;Next i       &lt;br /&gt;Set rs = qdf.OpenRecordset(dbOpenSnapshot)&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;….&lt;/p&gt;    &lt;p&gt;&amp;#39; Insert recordset into cells starting at left hand side and second row      &lt;br /&gt;&amp;#39;&amp;#160; Using a copyfromRecordset is much, much faster than stuffing in the cells one at a time.       &lt;br /&gt;.range(&amp;quot;A2&amp;quot;).CopyFromRecordset rs &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This is used in a generic routine behind the &lt;a href="http://www.granitefleet.com/ScreenShots/screen_ReportCrtieriaSelection.htm" target="_blank"&gt;very flexible reporting form in the Granite Fleet Manager&lt;/a&gt;.&amp;#160; When the user clicks on the Export Report to Excel command button I look at the record source of the report to fetch the query name.&amp;#160;&amp;#160; I then build the where clause and execute the above code.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1725904" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/access/archive/tags/VBA/default.aspx">VBA</category></item><item><title>A new version of the Auto FE Updater is available</title><link>http://msmvps.com/blogs/access/archive/2009/09/08/a-new-version-of-the-auto-fe-updater-is-available.aspx</link><pubDate>Tue, 08 Sep 2009 22:53:11 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1721683</guid><dc:creator>Tony</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1721683</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1721683</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/09/08/a-new-version-of-the-auto-fe-updater-is-available.aspx#comments</comments><description>&lt;p&gt;A new version of the Auto FE Updater is available at my new, somewhat reorganized website &lt;a href="http://www.autofeupdater.com/"&gt;http://www.autofeupdater.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Added FileExtension and FileExtensionSimple to the StartMethod.&amp;#160;&amp;#160; This now means the utility can be used for ADP/ADEs or any other file extension really.&amp;#160; This method can be easier for the developer for testing purposes than AutoSelect if&amp;#160; the developer is using Access 2003 on their system and has Access 2007 installed as the AutoSelect starts the newest version of Access.&amp;#160; Thus causing the annoying wait while Access 2007 installs itself. &lt;/p&gt;  &lt;p&gt;Added a debug checkbox to the developers form so you can see what the Auto FE Updater wants to do before you run the utility &lt;/p&gt;  &lt;p&gt;Updated website showing the CreateShortCutOnPrograms and CreateShortCutOnCommonPrograms options which have been available for some considerable length of time but weren&amp;#39;t documented on the website.&amp;#160; Oops. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1721683" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Auto+FE+Updater/default.aspx">Auto FE Updater</category></item><item><title>An approach to sending text messages from within an Access application</title><link>http://msmvps.com/blogs/access/archive/2009/08/06/an-approach-to-sending-text-messages-from-within-an-access-application.aspx</link><pubDate>Thu, 06 Aug 2009 20:55:34 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1713914</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1713914</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1713914</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/08/06/an-approach-to-sending-text-messages-from-within-an-access-application.aspx#comments</comments><description>&lt;p&gt;Steve Schapel, fellow Access MVP, answered a question about sending SMSs with a page on his website.&amp;#160; &lt;a href="http://accesstips.datamanagementsolutions.biz/ftp_sms.htm" target="_blank"&gt;An approach to sending text messages from within an Access application&lt;/a&gt;&amp;#160;&amp;#160; I can see this capability being quite useful in some consumer facing applications requiring last minute notifications.&amp;#160;&amp;#160; One of Steve’s applications deals with school sporting events so last minute SMSs are very handy.&lt;/p&gt;  &lt;p&gt;Now it is possible to send emails to the cell phone gateway email accounts.&amp;#160; An example might be &lt;a href="mailto:78013456789@text.yourcellco.com"&gt;78013456789@text.yourcellco.com&lt;/a&gt;.&amp;#160; However this requires asking the person what cell phone company they use as the domain to the right of the @ sign is cell phone company specific.&amp;#160;&amp;#160; Also you run a risk of the cell phone deciding that your emails are spams.&amp;#160;&amp;#160; I would assume this is less of a risk if you use a SMS service which you pay for.&lt;/p&gt;  &lt;p&gt;As an aside the SMS outfit that Steve has used with good success is in South Africa.&amp;#160; While Steve’s clients in are New Zealand.&amp;#160; I find it quite interesting that SMS service is reliable between continents.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1713914" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Tips/default.aspx">Tips</category></item><item><title>Misleading error message - "Microsoft Access Was Unable to Create an MDE Database"</title><link>http://msmvps.com/blogs/access/archive/2009/06/25/misleading-error-message-quot-microsoft-access-was-unable-to-create-an-mde-database-quot.aspx</link><pubDate>Thu, 25 Jun 2009 22:48:42 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1696743</guid><dc:creator>Tony</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1696743</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1696743</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/06/25/misleading-error-message-quot-microsoft-access-was-unable-to-create-an-mde-database-quot.aspx#comments</comments><description>&lt;p&gt;Someone got this message using Access 2003 but this could also apply to other versions of access.&amp;nbsp; Clicking help on the error message then displays &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&amp;quot;This error is usually associated with compiling a large database into an MDE file.&amp;nbsp; Due to the method used to compile the database, a considerable number of TableID references are created for each table.&amp;nbsp; The Microsoft Jet database engine version 4.0 can only create a maximum of 2048 open TableIDs at one time.&amp;nbsp; Exporting a database as an MDE potentially can exceed this limit if the database has a large number of objects (table, macro, form, report, etc).&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;&lt;br /&gt;There is no accurate method to estimate the number of TableIDs the Jet database engine uses during the process of compiling a database as an MDE. However, each VBA module and each form uses one TableID, as a result, if the database has 500 forms, and each form&amp;#39;s HasModule property is set to Yes, as many as 1,000 TableIDs are used.&amp;quot;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;(I included the entire message so that folks searching on this message could find this blog posting.)&lt;/p&gt; &lt;p&gt;This posting sounds ominous but unless you have more than 1000 objects in your MDB/ACCDB you&amp;#39;re not even close to having this problem.&amp;nbsp; And that assumes that 1000 objects also have VBA code. So, for example, you&amp;#39;d have to have 100 tables, 300 queries and 700 forms and reports that also have VBA code.&lt;/p&gt; &lt;p&gt;The first thing to try is compiling the code to see if there are any errors.&amp;nbsp;&amp;nbsp; Ctrl+G to get to the VBA editor &amp;gt;&amp;gt; Debug &amp;gt;&amp;gt; Compile&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1696743" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category></item><item><title>Steps to think about when doing a data MDB back up, compact or zip.</title><link>http://msmvps.com/blogs/access/archive/2009/06/18/steps-to-think-about-when-doing-a-data-mdb-back-up-compact-or-zip.aspx</link><pubDate>Thu, 18 Jun 2009 22:16:27 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1695816</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1695816</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1695816</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/06/18/steps-to-think-about-when-doing-a-data-mdb-back-up-compact-or-zip.aspx#comments</comments><description>&lt;p&gt;I have a button on my &lt;a href="http://www.granitefleet.com/" target="_blank"&gt;Granite Fleet Manager&lt;/a&gt; app which allows the user to do a backup of the backend data MDB. I also have two other buttons which zip and email the backend data MDB to either themselves for backup purposes or to me for support purposes. &lt;/p&gt; &lt;p&gt;However any open forms or reports will lock the back end MDB file so a rename and compact won&amp;#39;t happen. &lt;p&gt;As I do not know which forms and reports the user might have left open when they click on any of the buttons I run through some code that closes all open forms and reports, then run the code doing the rename, compact back to the same file name and, if requested do the zip and email. &lt;p&gt;&amp;#39; close all forms and reports&lt;br /&gt;For Each frm In Forms&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DoCmd.Close acForm, frm.Name&lt;br /&gt;Next frm&lt;br /&gt;DoEvents&lt;br /&gt;For Each rpt In Reports&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DoCmd.Close acReport, rpt.Name&lt;br /&gt;Next rpt&lt;br /&gt;DoEvents &lt;p&gt;DoEvents seems to be necessary to give things time to close. But maybe not.. &lt;p&gt;Also note that I do keep a status form open during the above operation. I also do not have any list boxes or combo boxes with the row source set to a query or table referencing the data MDB on the form. And I don&amp;#39;t have any open recordset or database variables for &lt;a target="_blank"&gt;performance purposes&lt;/a&gt;. &lt;p&gt;You can double check that this code works by stopping the code just after the above and seeing if the ldb file on the data backend mdb no longer exists &lt;p&gt;Of course if there are other users in the back end then the rename won&amp;#39;t work of course. Also see my &lt;a href="http://www.granite.ab.ca/access/backup.htm" target="_blank"&gt;Backup, do you trust the users or sysadmins?&lt;/a&gt; tips page for more info.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1695816" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/access/archive/tags/backup/default.aspx">backup</category></item><item><title>An older version of MSCOMM32.OCX has had the "kill bit" flag set.</title><link>http://msmvps.com/blogs/access/archive/2009/06/14/an-older-version-of-mscomm32-ocx-has-had-the-quot-kill-bit-quot-flag-set.aspx</link><pubDate>Mon, 15 Jun 2009 00:28:56 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1695381</guid><dc:creator>Tony</dc:creator><slash:comments>10</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1695381</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1695381</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/06/14/an-older-version-of-mscomm32-ocx-has-had-the-quot-kill-bit-quot-flag-set.aspx#comments</comments><description>&lt;p&gt;The latest Windows Update has set the kill bit flag for an out of date but commonly used version of mscom32.ocx.&amp;nbsp; &lt;a href="http://www.microsoft.com/technet/security/advisory/969898.mspx" target="_blank"&gt;Microsoft Security Advisory (969898)&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Options&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;- roll back the update.&amp;nbsp; Not recommended however instructions are in the above web page.&lt;/p&gt; &lt;p&gt;- locate the newest version of mscomm32.ocx and distribute to your users/customers.&amp;nbsp; Not recommended as this will require the users to have admin privileges on their system to install the OCX or for the IT staff to do the update.&amp;nbsp; In the meantime your app&amp;#39;s serial port logic isn&amp;#39;t working &lt;/p&gt; &lt;p&gt;- replace the mscomm32.ocx with API code.&amp;nbsp; &lt;a href="http://www.thescarms.com/vbasic/commio.aspx"&gt;Perform Serial Port Communication&lt;/a&gt; - The sample code on this page consists of a VB module containing a collection of routines to perform serial port I/O without using the Microsoft Comm Control component. The module uses the Windows API to perform the overlapped I/O operations necessary for serial communications.&amp;nbsp; &lt;strong&gt;Recommended&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Symptoms&lt;/strong&gt; &lt;/p&gt; &lt;p&gt;Errors such as &lt;/p&gt; &lt;p&gt;&amp;quot;&amp;lt;your application&amp;gt; doesn&amp;#39;t support this ActiveX control&amp;quot;. &lt;p&gt;&amp;quot;no inserted control&amp;quot; (or something like that) &lt;p&gt;&amp;quot;Object doesn&amp;#39;t support this property or method&amp;quot; &lt;p&gt;When you open the form in design view you will get the following message &amp;quot;There is no Object in this control&amp;quot; and the control will no longer show the telephone icon.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1695381" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Security/default.aspx">Security</category><category domain="http://msmvps.com/blogs/access/archive/tags/Serial+Port+IO/default.aspx">Serial Port IO</category><category domain="http://msmvps.com/blogs/access/archive/tags/Patch/default.aspx">Patch</category></item><item><title>Smart Access Magazine</title><link>http://msmvps.com/blogs/access/archive/2009/06/01/smart-access-magazine.aspx</link><pubDate>Tue, 02 Jun 2009 02:23:35 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1693611</guid><dc:creator>Tony</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1693611</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1693611</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/06/01/smart-access-magazine.aspx#comments</comments><description>&lt;p&gt;Garry Robinson, fellow Access MVP, has purchased the &lt;a href="http://www.vb123.com/smart/" target="_blank"&gt;Smart Access Magazine&lt;/a&gt;.&amp;nbsp; there was 300 articles/2000 pages written by over 100 of best Access professionals in the world under the guidance of editor Peter Vogel.&lt;/p&gt; &lt;p&gt;(Although I do recall emailing a few authors some corrections and never hearing back from them.)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1693611" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category></item><item><title>DbUtilities - Transfer object permissions from a secured database to a new database container</title><link>http://msmvps.com/blogs/access/archive/2009/05/23/dbutilities-transfer-object-permissions-from-a-secured-database-to-a-new-database-container.aspx</link><pubDate>Sat, 23 May 2009 23:57:46 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1693027</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1693027</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1693027</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/05/23/dbutilities-transfer-object-permissions-from-a-secured-database-to-a-new-database-container.aspx#comments</comments><description>&lt;p&gt;The first item &amp;quot;is a fantastic re-write of DbUtilities which,&amp;nbsp; as an Add-in, makes it easier to transfer the object permissions from a secured database to a new database container. &amp;quot;&amp;nbsp; Author: Jeff Conrad (aka &amp;quot;Access Junkie&amp;quot;), former Access MVP and now a test for Microsoft.  &lt;p&gt;&lt;a href="http://www.accessmvp.com/SDaigle/index.htm" target="_blank"&gt;Sandra Daigle&amp;#39;s Microsoft Access Database Samples&lt;/a&gt; as well as other useful utilities.&amp;nbsp; Including &amp;quot;a way to open and manage multiple instances of a single form using a collection class&amp;quot; &lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1693027" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Security/default.aspx">Security</category></item><item><title>Redimming an array 1,000,000 times takes 4.63 seconds</title><link>http://msmvps.com/blogs/access/archive/2009/05/21/redimming-an-array-1-000-000-times-takes-4-63-seconds.aspx</link><pubDate>Fri, 22 May 2009 02:31:30 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1692920</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1692920</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1692920</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/05/21/redimming-an-array-1-000-000-times-takes-4-63-seconds.aspx#comments</comments><description>&lt;p&gt;The following question was asked at StackedOverflow.&lt;a href="http://stackoverflow.com/questions/890709/how-do-you-redimension-an-array-in-vba" target="_blank"&gt;How do you redimension an array in VBA?&lt;/a&gt;.&amp;nbsp; One response was some detailed code showing how to redim an array efficiently by doubling the number of elements.&amp;nbsp;&amp;nbsp; This took 0.41 seconds for a million records while redimming 1,000,000 took 4.63 records.&lt;/p&gt; &lt;p&gt;I don&amp;#39;t think I&amp;#39;ve ever had over 100 elements in an array.&amp;nbsp;&amp;nbsp; Maybe 1,000 once or twice. And now I&amp;#39;m not at all concerned about efficiency while redimming.&lt;/p&gt; &lt;p&gt;Note that I only occasionally visit that website to answer questions.&amp;nbsp; My biggest complaint is that you never know what comments or postings are new and haven&amp;#39;t been answered.&amp;nbsp; Very much unlike using a NNTP newsgroup reader rich client.&amp;nbsp;&amp;nbsp; But it&amp;#39;s interesting to poke about to see what&amp;#39;s new has been answered. &lt;/p&gt; &lt;p&gt;It&amp;#39;s also interesting to read what bull**it has been spouted by folks who view Access with a lot of disdain.&amp;nbsp; &lt;a href="http://stackoverflow.com/users/9787/david-w-fenton" target="_blank"&gt;David W. Fenton&lt;/a&gt; is doing a fine job of answering such comments.&amp;nbsp; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1692920" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Tips/default.aspx">Tips</category><category domain="http://msmvps.com/blogs/access/archive/tags/VBA/default.aspx">VBA</category></item><item><title>Latest Access 2003 hotfix - 970623</title><link>http://msmvps.com/blogs/access/archive/2009/05/21/latest-access-2003-hotfix.aspx</link><pubDate>Fri, 22 May 2009 00:58:22 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1692916</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1692916</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1692916</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/05/21/latest-access-2003-hotfix.aspx#comments</comments><description>&lt;p&gt;&amp;quot;When you try to import all objects from an Access 2003 database into a new one, you receive the following error message:&amp;nbsp;&amp;nbsp; There isn&amp;#39;t enough free memory to update the display. Close unneeded programs and try again.&amp;quot; &lt;p&gt;&lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;970623" target="_blank"&gt;Access 2003 hotfix package April 28, 2009 - 970623&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1692916" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Patch/default.aspx">Patch</category></item><item><title>Office 2010 The Movie</title><link>http://msmvps.com/blogs/access/archive/2009/05/12/office-2010-the-movie.aspx</link><pubDate>Wed, 13 May 2009 02:57:34 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1692304</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1692304</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1692304</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/05/12/office-2010-the-movie.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://www.office2010themovie.com/" target="_blank"&gt;Office 2010 The Movie&lt;/a&gt;&amp;nbsp; Interesting video that.&amp;nbsp; But notice the link to the &lt;a href="http://blogs.technet.com/office2010/" target="_blank"&gt;Office 2010 blog&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1692304" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Office/default.aspx">Office</category></item><item><title>Microsoft Office 2010 Technical Preview</title><link>http://msmvps.com/blogs/access/archive/2009/05/12/microsoft-office-2010-technical-preview.aspx</link><pubDate>Wed, 13 May 2009 02:25:32 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1692303</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1692303</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1692303</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/05/12/microsoft-office-2010-technical-preview.aspx#comments</comments><description>&lt;p&gt;The &lt;a href="https://microsoft.crgevents.com/Office2010TheMovie/Content/Default.aspx?p=Home&amp;amp;" target="_blank"&gt;Microsoft Office 2010 Technical Preview&lt;/a&gt; is a limited, invitation only program which will provide you with the opportunity to experience early, pre-release versions of Office 2010 which will include the following applications:&amp;nbsp; Word 2010, Excel 2010, Outlook 2010, PowerPoint 2010, OneNote 2010, Access 2010, InfoPath 2010 and Publisher 2010. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1692303" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Office/default.aspx">Office</category></item><item><title>Exceeding 2 Gb MDB file size (and a bit of TGIF humour)</title><link>http://msmvps.com/blogs/access/archive/2009/05/08/exceeding-2-gb-mdb-file-size-and-a-bit-of-tgif-humour.aspx</link><pubDate>Fri, 08 May 2009 23:14:50 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1692095</guid><dc:creator>Tony</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1692095</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1692095</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/05/08/exceeding-2-gb-mdb-file-size-and-a-bit-of-tgif-humour.aspx#comments</comments><description>&lt;p&gt;Exceeding the 2 Gb MDB file size gives you an exceedingly misleading error message:&lt;/p&gt; &lt;p&gt;In Jet 4.0 one message that is received when the 2 Gb file size is exceeded is invalid argument.&amp;nbsp;&amp;nbsp;&amp;nbsp; This is, of course, utterly confusing and can mean other things such as corruption.  &lt;p&gt;In A2007/ACE (I was running in an ACCDB) I got the following message  &lt;blockquote&gt; &lt;p&gt; 3049 Cannot open database &amp;#39;&amp;#39;.&amp;nbsp; It may not be a database that your application recognizes, or the file may be corrupt. &lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;running the following code.&amp;nbsp; (Watch for line wrap.) &lt;blockquote&gt; &lt;p&gt;Const FillText As String = &amp;quot;ASdlkjSLDJKADSLJADSLJ ASDLJK ALSDJ LASJKD&lt;br /&gt;LJASLDJK ALSJKD LAJSD lJKA SDLJK ASDLj ASDLj ALSDJ LJ &amp;quot; &amp;amp; _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;quot;ASdlkjSLDJKADSLJADSLJ ASDLJK ALSDJ LASJKD LJASLDJK ALSJKD LAJSD&lt;br /&gt;lJKA SDLJK ASDLj ASDLj ALSDJ LJ &amp;quot; &amp;amp; _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;quot; AS:LK:ASDK A:D :AKSD :ASDK:AKSD :AKS D adfasdf asd fasdf asdf&amp;quot;&lt;br /&gt;Sub Filltable()  &lt;p&gt;Dim rs As DAO.Recordset  &lt;p&gt;Set rs = CurrentDb.OpenRecordset(&amp;quot;Table1&amp;quot;)  &lt;p&gt;tagTop:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rs.AddNew&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rs!field1 = FillText&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rs.Update&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DoEvents&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GoTo tagTop  &lt;p&gt;End Sub&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Now this code runs for several hours so be patient.&amp;nbsp; I only ran it inside Access 2007 and ACCDBs.&amp;nbsp; I&amp;#39;ll run it in Access 2003 just to double check that message.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (Out for steak, Caesar salad and mugs of red wine with friends.) &lt;p&gt;Now note that you don&amp;#39;t want an autonumber key on the table.&amp;nbsp; Just the text field.&amp;nbsp; I suspect by the time you hit five million records the overflow areas of the index will get real, real slow.&amp;nbsp; But I don&amp;#39;t feel like testing that. &lt;h5&gt;&lt;strong&gt;Humour&lt;/strong&gt;&lt;/h5&gt; &lt;p&gt;&lt;a href="http://www.thatlldoit.com" target="_blank"&gt;Bill Mosca&lt;/a&gt;, fellow Access MVP, had the following to say about my FillText string:&amp;nbsp; Here&amp;#39;s a site for greeking text...in case you need to fill a longer string without monkey-typing it yourself. &lt;a href="http://www.duckisland.com/GreekMachine.asp"&gt;&lt;br /&gt;http://www.duckisland.com/GreekMachine.asp&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Of course another alternative is &lt;a href="http://www.lipsum.com/" target="_blank"&gt;Lorem Ipsum&lt;/a&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp; I used a paragraph from that in a reply to someone who stated &amp;quot;Of course, we&amp;#39;re going to have to argue that one for a while.&amp;quot;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1692095" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Humour/default.aspx">Humour</category></item><item><title>Dreaming of Rails as the Next Microsoft Access</title><link>http://msmvps.com/blogs/access/archive/2009/05/04/dreaming-of-rails-as-the-next-microsoft-access.aspx</link><pubDate>Tue, 05 May 2009 05:31:01 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1691870</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1691870</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1691870</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/05/04/dreaming-of-rails-as-the-next-microsoft-access.aspx#comments</comments><description>&lt;p&gt;An interesting blog posting titled &lt;a href="http://broadcast.oreilly.com/2009/05/dreaming-of-rails-as-the-next.html" target="_blank"&gt;Dreaming of Rails as the Next Microsoft Access&lt;/a&gt;&amp;nbsp; (Rails meaning &lt;a href="http://en.wikipedia.org/wiki/Ruby_on_Rails" target="_blank"&gt;Ruby on Rails&lt;/a&gt; of which I know nothing other than having seen the occasional reference it.)&amp;nbsp; Now I disagree with the authors characterization of us as &amp;quot;Office drones&amp;quot;.&amp;nbsp; &amp;lt;smile&amp;gt;&lt;/p&gt; &lt;p&gt;Nevertheless interesting reading.&lt;/p&gt; &lt;p&gt;Note that I located this blog entry because I&amp;#39;m now following #access, #msaccess and #microsoftaccess items on Twitter.&amp;nbsp; I&amp;#39;m currently using the Tweetdeck client but I&amp;#39;m not overly impressed with the UI.&amp;nbsp; I also am Tweeting (I think that&amp;#39;s the correct verb) my blog postings.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1691870" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Software+Development/default.aspx">Software Development</category></item><item><title>The problems with currency fields</title><link>http://msmvps.com/blogs/access/archive/2009/04/27/the-problems-with-currency-fields.aspx</link><pubDate>Tue, 28 Apr 2009 01:48:51 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1691423</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1691423</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1691423</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/04/27/the-problems-with-currency-fields.aspx#comments</comments><description>&lt;p&gt;The Access help on currency fields states:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Use a Currency field to prevent rounding off during calculations. A Currency field is accurate to 15 digits to the left of the decimal point and 4 digits to the right. A Currency field occupies 8 bytes of disk space.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Excellent you figure.&amp;nbsp; Now if your code and queries are doing any multiplying or dividing you just have to remember to round to two decimal places.&lt;/p&gt; &lt;p&gt;And you&amp;#39;re done.&amp;nbsp;&amp;nbsp; Not so fast.&amp;nbsp; (Otherwise what&amp;#39;s the point of this blog entry.)&lt;/p&gt; &lt;p&gt;Turns out the users can accidentally enter a tenth of a cent and/or a hundredth of a cent.&amp;nbsp; And you won&amp;#39;t notice it unless the focus is on the field.&amp;nbsp;&amp;nbsp; And you won&amp;#39;t notice unless someone points out a weird rounding problem.&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access/QueryRound3_5F00_2.jpg"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="111" alt="QueryRound3" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access/QueryRound3_5F00_thumb.jpg" width="144" border="0" /&gt;&lt;/a&gt;&amp;nbsp; &lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access/QueryRound2_5F00_2.jpg"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="112" alt="QueryRound2" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access/QueryRound2_5F00_thumb.jpg" width="142" border="0" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;One of my clients MDBs had three of those fields.&amp;nbsp; Worse, one of them was on a parts price and thus would&amp;#39;ve continued to propagate for years.&amp;nbsp;&amp;nbsp; Another client had the $0.001 on a rate table and it had been transferred to 500 of the 600K records on the table.&lt;/p&gt; &lt;p&gt;There is a KB article on this topic &lt;a href="http://support.microsoft.com/kb/210564/en-us" target="_blank"&gt;ACC2000: Round or Truncate Currency Values to the Intended Number of Decimals&lt;/a&gt; which shows how to put some simple code in the AfterUpdate event of a currency control.&lt;/p&gt; &lt;p&gt;To find those wonky data in the tables use the following query:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;SELECT sriInvoiceAmount&lt;br /&gt;FROM ServiceRecordInvoices&lt;br /&gt;WHERE sriInvoiceAmount&amp;lt;&amp;gt;Round([sriInvoiceAmount],2);&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;or  &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access/QueryRound1_5F00_2.jpg"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" height="307" alt="QueryRound1" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/access/QueryRound1_5F00_thumb.jpg" width="243" border="0" /&gt;&lt;/a&gt;  &lt;p&gt;And you&amp;#39;re done, right?&amp;nbsp;&amp;nbsp; Wrong. &lt;p&gt;&lt;strong&gt;Dates &lt;/strong&gt; &lt;p&gt;Dates can have a similar problem when the century portion is hidden by the default Windows date formatting.&amp;nbsp;&amp;nbsp; You will find this when attempting to upsize the Access database to SQL Server as the SQL Server smalldatetime field has an epoch date of 1900-01-01.&amp;nbsp;&amp;nbsp;&amp;nbsp; In a table of several hundred thousand records we found 12 of these records where the value was before 1900.&amp;nbsp; The dates weren&amp;#39;t actually used in any computations which is why no one had noticed them. &lt;p&gt;&lt;strong&gt;Internationalization&lt;/strong&gt; &lt;p&gt;Whoops.&amp;nbsp; Most North American developers would think in terms of pennies so rounding to 2 decimal places is great.&amp;nbsp; But not so the folks in other countries. &lt;p&gt;So I created a constant on my hidden Global Options form and placed the value of 2 in it.&amp;nbsp; I referenced that form variable in all my code and queries so I&amp;#39;m set.&amp;nbsp;&amp;nbsp; If I ever sell my software in another country I&amp;#39;m set to do some more investigating on the topic of how to fetch the currency decimal places from the users regional settings and go from there. &lt;p&gt;(Note that a potential problem could exist if the users had their systems formatted in different currencies or different decimal places.&amp;nbsp; Which is why I&amp;#39;m ignoring this end of the topic for now.) &lt;p&gt;&lt;strong&gt;Currency formatting display.&lt;/strong&gt; &lt;p&gt;Finally when I did some searching on this topic I came across several pages on a related topic again of interest to folks whose applications need to support multiple currencies.&amp;nbsp; &lt;p&gt;&lt;a href="http://www.everythingaccess.com/tutorials.asp?ID=186" target="_blank"&gt;Using the Currency field data type - without the hassle&lt;/a&gt;&lt;br /&gt;&lt;a href="http://allenbrowne.com/ser-44.html" target="_blank"&gt;Currency format&lt;/a&gt;&lt;br /&gt;&lt;a href="http://donnedwards.openaccess.co.za/2009/03/microsoft-access-and-ten-year-old.html" target="_blank"&gt;Microsoft Access and the Ten-Year-Old Currency Bug&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1691423" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category></item><item><title>I sure hope there is a final exam on this course</title><link>http://msmvps.com/blogs/access/archive/2009/04/27/i-sure-hope-there-is-a-final-exam-on-this-course.aspx</link><pubDate>Mon, 27 Apr 2009 22:02:22 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1691410</guid><dc:creator>Tony</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/rsscomments.aspx?PostID=1691410</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/access/commentapi.aspx?PostID=1691410</wfw:comment><comments>http://msmvps.com/blogs/access/archive/2009/04/27/i-sure-hope-there-is-a-final-exam-on-this-course.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://www.1001fp.com/index.php?p=view_project&amp;amp;id=116798" target="_blank"&gt;Project title:&amp;nbsp; Need 15 Queries in Access&lt;/a&gt;&amp;nbsp; &lt;p&gt;&amp;quot;I need someone who can make 15 queries in Access 2007 and have to be done in sql view (this is a must). I want this for school home work and need them fast, as soon as possible. I will provide you with the tables and the queries I need, they are attached so you can tell me if you can do it or not. Payment will be made in full after project is completed. I will not consider anyone without any reviews. Bid only if you can do this project, I need it fast so don&amp;#39;t make me waste my time. I wil... &amp;quot; &lt;p&gt;And if you click through the link Place my bid for this project! you will see the replies.&amp;nbsp; Wow.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1691410" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/access/archive/tags/Access/default.aspx">Access</category><category domain="http://msmvps.com/blogs/access/archive/tags/Humour/default.aspx">Humour</category><category domain="http://msmvps.com/blogs/access/archive/tags/Eclectic/default.aspx">Eclectic</category></item></channel></rss>