<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Code For Excel And Outlook Blog</title>
	
	<link>http://www.codeforexcelandoutlook.com/blog</link>
	<description>Automation and interop VBA code samples for MS Excel and Outlook</description>
	<lastBuildDate>Mon, 09 Nov 2009 11:30:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /><image><link>http://www.codeforexcelandoutlook.com/blog/</link><url>http://feeds2.feedburner.com/~fc/codeforexcelandoutlook/kylx?bg=FF9900&amp;amp;fg=000000&amp;amp;anim=0</url><title>Logo</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/codeforexcelandoutlook/kylx" type="application/rss+xml" /><feedburner:emailServiceId>codeforexcelandoutlook/kylx</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcodeforexcelandoutlook%2Fkylx" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcodeforexcelandoutlook%2Fkylx" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcodeforexcelandoutlook%2Fkylx" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/codeforexcelandoutlook/kylx" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fcodeforexcelandoutlook%2Fkylx" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fcodeforexcelandoutlook%2Fkylx" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2Fcodeforexcelandoutlook%2Fkylx" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://www.addtoany.com/?linkname=Code%20For%20Excel%20And%20Outlook%20Blog&amp;linkurl=http%3A%2F%2Ffeeds.feedburner.com%2Fcodeforexcelandoutlook%2Fkylx&amp;type=feed" src="http://www.addtoany.com/addfr-b.gif">Add to Any Feed Reader</feedburner:feedFlare><feedburner:browserFriendly>Thanks for viewing my feed. If you would like to subscribe, the options on this page are available for you to add this feed to whatever reader you choose.</feedburner:browserFriendly><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Updated VBA Backup code</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/11/updated-vba-backup-code/</link>
		<comments>http://www.codeforexcelandoutlook.com/blog/2009/11/updated-vba-backup-code/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 11:30:24 +0000</pubDate>
		<dc:creator>JP</dc:creator>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[backup]]></category>

		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=740</guid>
		<description>&amp;#160;&amp;#160;&amp;#160;&amp;#160;I've updated the backup code I presented in a previous post: A VBA Based Backup Solution
&amp;#160;&amp;#160;&amp;#160;&amp;#160;In addition to the existing function, this code will make copies of open files (of any type). So if you wanted to backup the currently open workbook, you can do that now. Or that .ppt file with next week's presentation, [...]&lt;p&gt;&lt;br /&gt;&lt;br /&gt;
&lt;a href="http://www.codeforexcelandoutlook.com/blog/2009/11/updated-vba-backup-code/"&gt;Updated VBA Backup code&lt;/a&gt; is Copyright &amp;copy; &lt;a href="http://www.codeforexcelandoutlook.com/blog/"&gt;Code For Excel And Outlook&lt;/a&gt;. 
&lt;br /&gt;
&lt;a href="http://www.exceluser.com/cmd.php?af=928709"&gt;Click here for plug-and-play Excel Dashboards&lt;/a&gt;&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;I've updated the backup code I presented in a previous post: <a href="http://www.codeforexcelandoutlook.com/blog/2009/06/a-vba-based-backup-solution/">A VBA Based Backup Solution</a></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;In addition to the existing function, this code will make copies of open files (of any type). So if you wanted to backup the currently open workbook, you can do that now. Or that .ppt file with next week's presentation, and so on. I've added better error handling as well. Below you will find the main procedure, along with all of the ancillary functions (except for BrowseForFolder which you'll need to get at <a href="http://www.vbaexpress.com/kb/getarticle.php?kb_id=284">VBA Express</a>).</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;Note that we could also use the <strong>SaveCopyAs</strong> Method to make a copy of the active workbook, if we already knew the destination path (and only wanted to save <strong>workbooks</strong>).</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #008000;">' API to make a copy of a currently open file<br />
</span><span style="color: #000080;">Declare</span> <span style="color: #000080;">Function</span> apiCopyFile <span style="color: #000080;">Lib</span> <span style="color: #800000;">&quot;kernel32&quot;</span> <span style="color: #000080;">Alias</span> <span style="color: #800000;">&quot;CopyFileA&quot;</span> _<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;(<span style="color: #000080;">ByVal</span> lpExistingFileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>, _<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000080;">ByVal</span> lpNewFileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>, _<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000080;">ByVal</span> bFailIfExists <span style="color: #000080;">As</span> <span style="color: #000080;">Long</span>) <span style="color: #000080;">As</span> <span style="color: #000080;">Long</span><br />
<br />
<span style="color: #000080;">Sub</span> BackupFile()<br />
<span style="color: #008000;">' make a copy of any file in any folder, even if open<br />
</span><br />
&nbsp; <span style="color: #000080;">On</span> <span style="color: #000080;">Error</span> <span style="color: #000080;">GoTo</span> ErrorHandler<br />
<br />
&nbsp; <span style="color: #000080;">Dim</span> todaysDate <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
&nbsp; <span style="color: #000080;">Dim</span> fileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
&nbsp; <span style="color: #000080;">Dim</span> fileType <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
&nbsp; <span style="color: #000080;">Dim</span> isOpen <span style="color: #000080;">As</span> <span style="color: #000080;">Boolean</span><br />
&nbsp; <span style="color: #000080;">Dim</span> extractedFileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
&nbsp; <span style="color: #000080;">Dim</span> wkb <span style="color: #000080;">As</span> Excel.Workbook<br />
&nbsp; <span style="color: #000080;">Dim</span> fileFolder <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<br />
&nbsp; <span style="color: #008000;">' pad with space<br />
</span> &nbsp;<span style="color: #000080;">Const</span> BACKUP_FILE <span style="color: #000080;">As</span> <span style="color: #000080;">String</span> = <span style="color: #800000;">&quot; BACKUP &quot;</span><br />
<br />
&nbsp; <span style="color: #008000;">' get current date and time<br />
</span> &nbsp;todaysDate = Format(Now, <span style="color: #800000;">&quot;MMDDYYYY HHMM&quot;</span>)<br />
<br />
&nbsp; <span style="color: #008000;">' get full filepath of file to be copied<br />
</span> &nbsp;fileName = GetFileName<br />
<br />
&nbsp; <span style="color: #000080;">If</span> fileName = <span style="color: #800000;">&quot;False&quot;</span> <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; MsgBox <span style="color: #800000;">&quot;No file selected, exiting now.&quot;</span><br />
&nbsp; &nbsp; <span style="color: #000080;">Exit</span> <span style="color: #000080;">Sub</span><br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
<br />
&nbsp; <span style="color: #008000;">' get file extension<br />
</span> &nbsp;fileType = GetFileType(fileName)<br />
<br />
&nbsp; <span style="color: #008000;">' extract filename from drive letter and extension<br />
</span> &nbsp;extractedFileName = ExtractFileName(fileName)<br />
<br />
&nbsp; <span style="color: #008000;">' check if file is currently open<br />
</span> &nbsp;<span style="color: #000080;">For</span> <span style="color: #000080;">Each</span> wkb <span style="color: #000080;">In</span> Excel.Workbooks<br />
&nbsp; &nbsp; <span style="color: #000080;">If</span> InStr(wkb.Name, extractedFileName) &gt; 0 <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; &nbsp; isOpen = <span style="color: #000080;">True</span><br />
&nbsp; &nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
&nbsp; <span style="color: #000080;">Next</span><br />
<br />
&nbsp; <span style="color: #008000;">' browse for folder to place files<br />
</span> &nbsp;fileFolder = BrowseForFolder &amp; Application.PathSeparator<br />
<br />
&nbsp; <span style="color: #000080;">If</span> fileFolder = <span style="color: #800000;">&quot;False&quot;</span> <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; MsgBox <span style="color: #800000;">&quot;No folder chosen, no backup is being made.&quot;</span><br />
&nbsp; &nbsp; <span style="color: #000080;">Exit</span> <span style="color: #000080;">Sub</span><br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
<br />
&nbsp; <span style="color: #008000;">' copy file to folder, complete with new name<br />
</span> &nbsp;<span style="color: #008000;">' if file is open, use API call<br />
</span> &nbsp;<span style="color: #000080;">If</span> isOpen <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; <span style="color: #000080;">Call</span> apiCopyFile(fileName, fileFolder &amp; extractedFileName &amp; _<br />
&nbsp; &nbsp; BACKUP_FILE &amp; todaysDate &amp; fileType, <span style="color: #000080;">False</span>)<br />
&nbsp; <span style="color: #000080;">Else</span><br />
&nbsp; &nbsp; FileCopy fileName, fileFolder &amp; extractedFileName &amp; BACKUP_FILE &amp; _<br />
&nbsp; &nbsp; todaysDate &amp; fileType<br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
<br />
ProgramExit:<br />
&nbsp; <span style="color: #000080;">Exit</span> <span style="color: #000080;">Sub</span><br />
ErrorHandler:<br />
&nbsp; MsgBox Err.Number &amp; <span style="color: #800000;">&quot; - &quot;</span> &amp; Err.Description<br />
&nbsp; <span style="color: #000080;">Resume</span> ProgramExit<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span><br />
<br />
<span style="color: #000080;">Function</span> GetFileName() <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<span style="color: #008000;">' returns filename to be backed up<br />
</span> &nbsp;<span style="color: #000080;">Dim</span> fileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
&nbsp; fileName = _<br />
&nbsp; &nbsp; Application.GetOpenFilename(<span style="color: #800000;">&quot;All Files (*.*), *.*&quot;</span>, , <span style="color: #800000;">&quot;Choose File to Backup&quot;</span>)<br />
<br />
&nbsp; <span style="color: #000080;">If</span> fileName &lt;&gt; <span style="color: #800000;">&quot;False&quot;</span> <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; GetFileName = fileName<br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Function</span><br />
<br />
<span style="color: #000080;">Function</span> ExtractFileName(fileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>) <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<span style="color: #008000;">' extract filename portion of filename, no extension<br />
</span> &nbsp;<span style="color: #000080;">Dim</span> fileN <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<br />
&nbsp; fileN = Right(fileName, Len(fileName) - InStrRev(fileName, <span style="color: #800000;">&quot;\&quot;</span>))<br />
&nbsp; fileN = Replace(fileN, GetFileType(fileN), <span style="color: #800000;">&quot;&quot;</span>)<br />
<br />
&nbsp; ExtractFileName = fileN<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Function</span><br />
<br />
<span style="color: #000080;">Function</span> GetFileType(fileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>) <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<span style="color: #008000;">' get file extension<br />
</span> &nbsp;GetFileType = Mid$(fileName, InStrRev(fileName, <span style="color: #800000;">&quot;.&quot;</span>), Len(fileName))<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;First we get the name of the file, using Excel's native dialog box. The GetFileName function uses the GetOpenFilename function to return a string with the path and filename of the file to be copied.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;The filename is parsed to extract the filename portion and the extension, which we'll use later to build the new filename (with timestamp).</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;If copying a workbook, we cannot use FileCopy if it's already open. So we loop through the Workbooks collection to see if the filename matches any open workbook. If so, we use the API to copy the file. Instead of looping, I suppose we could just check if the file is an Excel type (if not, there's no point in looping the Workbooks collection). I have a function to do just that in <a href="http://www.codeforexcelandoutlook.com/blog/2009/11/is-that-an-excel-file-i-see/">this post</a>.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;If you select a workbook, the procedure checks if it's open, but doesn't check any other file type. If this procedure will be used mostly with non-Excel file types, just convert it to use the API exclusively.</p>
<p><a href="http://www.codeforexcelandoutlook.com/wkbks/BackMeUp.zip">Download sample workbook</a></p>
<p><br /><br />
<a href="http://www.codeforexcelandoutlook.com/blog/2009/11/updated-vba-backup-code/">Updated VBA Backup code</a> is Copyright &copy; <a href="http://www.codeforexcelandoutlook.com/blog/">Code For Excel And Outlook</a>. 
<br />
<a href="http://www.exceluser.com/cmd.php?af=928709">Click here for plug-and-play Excel Dashboards</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?a=scuGlxUBb6g:xLPYauHlv9U:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?i=scuGlxUBb6g:xLPYauHlv9U:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/codeforexcelandoutlook/kylx/~4/scuGlxUBb6g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.codeforexcelandoutlook.com/blog/2009/11/updated-vba-backup-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Use textboxes like date or phone number fields</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/11/use-textboxes-like-date-or-phone-number-fields/</link>
		<comments>http://www.codeforexcelandoutlook.com/blog/2009/11/use-textboxes-like-date-or-phone-number-fields/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 11:30:29 +0000</pubDate>
		<dc:creator>JP</dc:creator>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[date field]]></category>
		<category><![CDATA[phone number field]]></category>

		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=738</guid>
		<description>&amp;#160;&amp;#160;&amp;#160;&amp;#160;Textboxes on Excel userforms work a little different than their Access equivalents. For one thing, you can't specify an input format. A textbox is just, well, a textbox.
&amp;#160;&amp;#160;&amp;#160;&amp;#160;But with VBA, we can make our textboxes act like date or phone number fields. Just like Access!
&amp;#160;&amp;#160;&amp;#160;&amp;#160;Simply put, you need to write code for the Enter, Exit [...]&lt;p&gt;&lt;br /&gt;&lt;br /&gt;
&lt;a href="http://www.codeforexcelandoutlook.com/blog/2009/11/use-textboxes-like-date-or-phone-number-fields/"&gt;Use textboxes like date or phone number fields&lt;/a&gt; is Copyright &amp;copy; &lt;a href="http://www.codeforexcelandoutlook.com/blog/"&gt;Code For Excel And Outlook&lt;/a&gt;. 
&lt;br /&gt;
&lt;a href="http://www.exceluser.com/cmd.php?af=928709"&gt;Click here for plug-and-play Excel Dashboards&lt;/a&gt;&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;Textboxes on Excel userforms work a little different than their Access equivalents. For one thing, you can't specify an input format. A textbox is just, well, a textbox.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;But with VBA, we can make our textboxes act like date or phone number fields. Just like Access!</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;Simply put, you need to write code for the Enter, Exit and AfterUpdate events to simulate what would happen if a given field holds a Date or Phone Number.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;The first thing you want to do is place the following at the top of your form's module:</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000080;">Const</span> DEFAULT_PHONE_FIELD <span style="color: #000080;">As</span> <span style="color: #000080;">String</span> = <span style="color: #800000;">&quot;( &nbsp; ) ___ - ____&quot;</span><br />
<span style="color: #000080;">Const</span> DEFAULT_DATE_FIELD <span style="color: #000080;">As</span> <span style="color: #000080;">String</span> = <span style="color: #800000;">&quot;__/__/____&quot;</span></div></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;These are the constants that will be used to format the empty textboxes that we'll use for the date and phone fields. Here are the event handlers that make up the phone field:</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000080;">Private</span> <span style="color: #000080;">Sub</span> HomePhoneNumber_Enter()<br />
<br />
&nbsp; <span style="color: #000080;">On</span> <span style="color: #000080;">Error</span> <span style="color: #000080;">GoTo</span> ErrorHandler<br />
<br />
&nbsp; <span style="color: #000080;">With</span> Me.HomePhoneNumber<br />
&nbsp; &nbsp; <span style="color: #000080;">If</span> .Value = DEFAULT_PHONE_FIELD <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; &nbsp; .Value = <span style="color: #800000;">&quot;&quot;</span><br />
&nbsp; &nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">With</span><br />
<br />
ProgramExit:<br />
&nbsp; <span style="color: #000080;">Exit</span> <span style="color: #000080;">Sub</span><br />
ErrorHandler:<br />
&nbsp; MsgBox Err.Number &amp; <span style="color: #800000;">&quot; - &quot;</span> &amp; Err.Description<br />
&nbsp; <span style="color: #000080;">Resume</span> ProgramExit<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span><br />
<br />
<span style="color: #000080;">Private</span> <span style="color: #000080;">Sub</span> HomePhoneNumber_Exit(<span style="color: #000080;">ByVal</span> Cancel <span style="color: #000080;">As</span> MSForms.ReturnBoolean)<br />
<br />
&nbsp; <span style="color: #000080;">On</span> <span style="color: #000080;">Error</span> <span style="color: #000080;">GoTo</span> ErrorHandler<br />
<br />
&nbsp; <span style="color: #000080;">With</span> Me.HomePhoneNumber<br />
&nbsp; &nbsp; <span style="color: #000080;">If</span> Len(.Value) = 0 <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; &nbsp; .Value = DEFAULT_PHONE_FIELD<br />
&nbsp; &nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">With</span><br />
<br />
ProgramExit:<br />
&nbsp; <span style="color: #000080;">Exit</span> <span style="color: #000080;">Sub</span><br />
ErrorHandler:<br />
&nbsp; MsgBox Err.Number &amp; <span style="color: #800000;">&quot; - &quot;</span> &amp; Err.Description<br />
&nbsp; <span style="color: #000080;">Resume</span> ProgramExit<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span><br />
<br />
<span style="color: #000080;">Private</span> <span style="color: #000080;">Sub</span> HomePhoneNumber_AfterUpdate()<br />
<br />
&nbsp; <span style="color: #000080;">On</span> <span style="color: #000080;">Error</span> <span style="color: #000080;">GoTo</span> ErrorHandler<br />
<br />
&nbsp; <span style="color: #008000;">' format phone number<br />
</span> &nbsp;<span style="color: #000080;">With</span> Me.HomePhoneNumber<br />
&nbsp; &nbsp; <span style="color: #000080;">If</span> Len(.Value) = 10 <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; &nbsp; .Value = Format(.Value, <span style="color: #800000;">&quot;(###) ###-####&quot;</span>)<br />
&nbsp; &nbsp; <span style="color: #000080;">Else</span><br />
&nbsp; &nbsp; &nbsp; .SetFocus<br />
&nbsp; &nbsp; &nbsp; .SelStart = 0<br />
&nbsp; &nbsp; &nbsp; .SelLength = Len(.Value)<br />
&nbsp; &nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">With</span><br />
<br />
ProgramExit:<br />
&nbsp; <span style="color: #000080;">Exit</span> <span style="color: #000080;">Sub</span><br />
ErrorHandler:<br />
&nbsp; MsgBox Err.Number &amp; <span style="color: #800000;">&quot; - &quot;</span> &amp; Err.Description<br />
&nbsp; <span style="color: #000080;">Resume</span> ProgramExit<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span></div></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;The event handlers for the date field are similar. The Initialize event for the Userform sets up the fields when the form loads:</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000080;">Private</span> <span style="color: #000080;">Sub</span> UserForm_Initialize()<br />
&nbsp; <span style="color: #000080;">With</span> Me<br />
&nbsp; &nbsp; .HomePhoneNumber.Value = DEFAULT_PHONE_FIELD<br />
&nbsp; &nbsp; .TodaysDate.Value = DEFAULT_DATE_FIELD<br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">With</span><br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span></div></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;The sequence is like this: when the form loads, the fields are made to look like date or phone fields. When a field is entered, if it only contains the pseudo field information, clear it out to prepare for data entry. If the field is left (i.e. the user tabs to the next field), put the default information back in. If something is typed into the field, but it's not a phone number, highlight the field (I'm a big believer in not interrupting the user, but giving them a visual clue that they didn't enter the information correctly).</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;I created a userform so you can see these fields in action. The download link is below.</p>
<p><img src="http://i929.photobucket.com/albums/ad137/jp2112jp/DatePhoneFields.png" border="0" alt="Date and Phone pseudo fields" /></p>
<p><a href="http://www.codeforexcelandoutlook.com/wkbks/DateAndPhoneFields.zip">Date and phone fields sample workbook</a> (visit the site to download)</p>
<p><br /><br />
<a href="http://www.codeforexcelandoutlook.com/blog/2009/11/use-textboxes-like-date-or-phone-number-fields/">Use textboxes like date or phone number fields</a> is Copyright &copy; <a href="http://www.codeforexcelandoutlook.com/blog/">Code For Excel And Outlook</a>. 
<br />
<a href="http://www.exceluser.com/cmd.php?af=928709">Click here for plug-and-play Excel Dashboards</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?a=BGJX0bNCGok:ydnjouaN6qo:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?i=BGJX0bNCGok:ydnjouaN6qo:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/codeforexcelandoutlook/kylx/~4/BGJX0bNCGok" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.codeforexcelandoutlook.com/blog/2009/11/use-textboxes-like-date-or-phone-number-fields/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Book Giveaway</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/11/free-book-giveaway/</link>
		<comments>http://www.codeforexcelandoutlook.com/blog/2009/11/free-book-giveaway/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 11:30:33 +0000</pubDate>
		<dc:creator>JP</dc:creator>
				<category><![CDATA[Administrative]]></category>
		<category><![CDATA[books]]></category>

		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=748</guid>
		<description>(Update 11/3/2009 8:00PM EST: All of the books have been distributed, thanks to everyone who emailed. I'll give away more in the future. &amp;#8211;JP)
&amp;#160;&amp;#160;&amp;#160;&amp;#160;If anyone wants, I'm giving away the following books. They're gently used and overall in good condition. Just drop me a line and I'll tell you which ones are still available. First [...]&lt;p&gt;&lt;br /&gt;&lt;br /&gt;
&lt;a href="http://www.codeforexcelandoutlook.com/blog/2009/11/free-book-giveaway/"&gt;Free Book Giveaway&lt;/a&gt; is Copyright &amp;copy; &lt;a href="http://www.codeforexcelandoutlook.com/blog/"&gt;Code For Excel And Outlook&lt;/a&gt;. 
&lt;br /&gt;
&lt;a href="http://www.exceluser.com/cmd.php?af=928709"&gt;Click here for plug-and-play Excel Dashboards&lt;/a&gt;&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>(<strong>Update 11/3/2009 8:00PM EST: All of the books have been distributed, thanks to everyone who emailed. I'll give away more in the future. &#8211;JP</strong>)</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;If anyone wants, I'm giving away the following books. They're gently used and overall in good condition. Just drop me a line and I'll tell you which ones are still available. First come, first serve. One book per person/address. I will mail them out this coming Saturday, so please <a href="http://www.codeforexcelandoutlook.com/blog/contact/">contact me</a> by Friday at the latest. After that they are going to the library or the trash. Sorry, U.S. residents only (otherwise the shipping is more than the cost of the book).</p>
<div align="center">
<a href="http://www.amazon.com/gp/product/1590592514?ie=UTF8&#038;tag=codforexcando-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=1590592514" rel="nofollow"><img src="http://images.amazon.com/images/P/1590592514.01.MZZZZZZZ.jpg" alt="Beginning Visual Basic 6 Database Programming" title="Beginning Visual Basic 6 Database Programming" style="border:0; margin:0px" /></a></p>
<p><a href="http://www.amazon.com/gp/product/0735618836?ie=UTF8&#038;tag=codforexcando-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0735618836" rel="nofollow"><img src="http://images.amazon.com/images/P/0735618836.01.MZZZZZZZ.jpg" alt="Microsoft Visual Basic 6.0 Professional Step by Step" title="Microsoft Visual Basic 6.0 Professional Step by Step" style="border:0; margin:0px" /></a></p>
<p><a href="http://www.amazon.com/gp/product/0596100736?ie=UTF8&#038;tag=codforexcando-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0596100736" rel="nofollow"><img src="http://images.amazon.com/images/P/0596100736.01.MZZZZZZZ.jpg" alt="Analyzing Business Data with Excel" title="Analyzing Business Data with Excel" style="border:0; margin:0px" /></a></p>
<p><a href="http://www.amazon.com/gp/product/0596007272?ie=UTF8&#038;tag=codforexcando-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0596007272" rel="nofollow"><img src="http://images.amazon.com/images/P/0596007272.01.MZZZZZZZ.jpg" alt="Learning SQL" title="Learning SQL" style="border:0; margin:0px" /></a></p>
<p><a href="http://www.amazon.com/gp/product/0619063157?ie=UTF8&#038;tag=codforexcando-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=0619063157" rel="nofollow"><img src="http://images.amazon.com/images/P/0619063157.01.MZZZZZZZ.jpg" alt="Programming Logic And Design" title="Programming Logic And Design" style="border:0; margin:0px" /></a>
</div>
<p><br /><br />
<a href="http://www.codeforexcelandoutlook.com/blog/2009/11/free-book-giveaway/">Free Book Giveaway</a> is Copyright &copy; <a href="http://www.codeforexcelandoutlook.com/blog/">Code For Excel And Outlook</a>. 
<br />
<a href="http://www.exceluser.com/cmd.php?af=928709">Click here for plug-and-play Excel Dashboards</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?a=fW8y6wGqago:QN5cdMH8_rA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?i=fW8y6wGqago:QN5cdMH8_rA:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/codeforexcelandoutlook/kylx/~4/fW8y6wGqago" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.codeforexcelandoutlook.com/blog/2009/11/free-book-giveaway/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is that an Excel file I see?</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/11/is-that-an-excel-file-i-see/</link>
		<comments>http://www.codeforexcelandoutlook.com/blog/2009/11/is-that-an-excel-file-i-see/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 12:00:01 +0000</pubDate>
		<dc:creator>JP</dc:creator>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[InStrRev]]></category>
		<category><![CDATA[Len]]></category>
		<category><![CDATA[MID]]></category>

		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=739</guid>
		<description>&amp;#160;&amp;#160;&amp;#160;&amp;#160;The GetFilesList function loops through a given folder, compares the file extension of each file against the given file extension, and returns a list of matching filenames.
&amp;#160;&amp;#160;&amp;#160;&amp;#160;Here's an intermediate function which can be called within the Do loop to check if the current filename has an appropriate Excel extension (i.e. instead of doing the comparison [...]&lt;p&gt;&lt;br /&gt;&lt;br /&gt;
&lt;a href="http://www.codeforexcelandoutlook.com/blog/2009/11/is-that-an-excel-file-i-see/"&gt;Is that an Excel file I see?&lt;/a&gt; is Copyright &amp;copy; &lt;a href="http://www.codeforexcelandoutlook.com/blog/"&gt;Code For Excel And Outlook&lt;/a&gt;. 
&lt;br /&gt;
&lt;a href="http://www.exceluser.com/cmd.php?af=928709"&gt;Click here for plug-and-play Excel Dashboards&lt;/a&gt;&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p><img src="http://i929.photobucket.com/albums/ad137/jp2112jp/microscope.gif" border="0" alt="microscope" style="float:right;" /></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;The <a href="http://www.codeforexcelandoutlook.com/blog/2009/06/list-matching-files-in-a-directory/">GetFilesList</a> function loops through a given folder, compares the file extension of each file against the given file extension, and returns a list of matching filenames.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;Here's an intermediate function which can be called within the Do loop to check if the current filename has an appropriate Excel extension (i.e. instead of doing the comparison directly inside the GetFilesList function):</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000080;">Function</span> IsExcelFileType(fileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>)<br />
<span style="color: #008000;">' returns True is file extension starts with 'xl', i.e. xla, xlam, xlsx, etc<br />
</span> &nbsp;IsExcelFileType = (UCase$(Left$(GetFileType(fileName), 2)) = <span style="color: #800000;">&quot;XL&quot;</span>)<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Function</span><br />
<br />
<span style="color: #000080;">Function</span> GetFileType(fileName <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>) <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<span style="color: #008000;">' get file extension<br />
</span> &nbsp;GetFileType = Mid$(fileName, InStrRev(fileName, <span style="color: #800000;">&quot;.&quot;</span>) + 1, Len(fileName))<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;The function is hard-coded for Excel files, but my assumption is that this is what most people are looping for anyway. So, assuming that you are looking for all Excel files in a folder, here is the updated GetFilesList function:</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000080;">Function</span> GetFilesList(<span style="color: #000080;">ByVal</span> folder <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>, <span style="color: #000080;">ByVal</span> fileType <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>) <span style="color: #000080;">As</span> <span style="color: #000080;">String</span>()<br />
<span style="color: #008000;">' build list of files in a folder folder<br />
</span><span style="color: #000080;">Dim</span> fileslist() <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<span style="color: #000080;">Dim</span> i <span style="color: #000080;">As</span> <span style="color: #000080;">Long</span><br />
<span style="color: #000080;">Dim</span> currentWorkbook <span style="color: #000080;">As</span> <span style="color: #000080;">String</span><br />
<br />
currentWorkbook = Dir(folder)<br />
<br />
<span style="color: #000080;">Do</span> <span style="color: #000080;">While</span> Len(currentWorkbook) &gt; 0<br />
&nbsp; <span style="color: #000080;">If</span> IsExcelFileType(currentWorkbook) <span style="color: #000080;">Then</span><br />
&nbsp; &nbsp; <span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> fileslist(i)<br />
&nbsp; &nbsp; fileslist(i) = currentWorkbook<br />
&nbsp; &nbsp; i = i + 1<br />
&nbsp; <span style="color: #000080;">End</span> <span style="color: #000080;">If</span><br />
<br />
&nbsp; currentWorkbook = Dir<br />
<span style="color: #000080;">Loop</span><br />
GetFilesList = fileslist<br />
<br />
<span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></div>
<p><br /><br />
<a href="http://www.codeforexcelandoutlook.com/blog/2009/11/is-that-an-excel-file-i-see/">Is that an Excel file I see?</a> is Copyright &copy; <a href="http://www.codeforexcelandoutlook.com/blog/">Code For Excel And Outlook</a>. 
<br />
<a href="http://www.exceluser.com/cmd.php?af=928709">Click here for plug-and-play Excel Dashboards</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?a=4HulR1TI6ug:_Jukuww51I4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?i=4HulR1TI6ug:_Jukuww51I4:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/codeforexcelandoutlook/kylx/~4/4HulR1TI6ug" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.codeforexcelandoutlook.com/blog/2009/11/is-that-an-excel-file-i-see/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>On Being a Responsible Outlook user</title>
		<link>http://www.codeforexcelandoutlook.com/blog/2009/10/on-being-a-responsible-outlook-user/</link>
		<comments>http://www.codeforexcelandoutlook.com/blog/2009/10/on-being-a-responsible-outlook-user/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 11:00:51 +0000</pubDate>
		<dc:creator>JP</dc:creator>
				<category><![CDATA[Outlook]]></category>
		<category><![CDATA[forward]]></category>
		<category><![CDATA[Reply]]></category>
		<category><![CDATA[Reply To All]]></category>

		<guid isPermaLink="false">http://www.codeforexcelandoutlook.com/blog/?p=745</guid>
		<description>&amp;#160;&amp;#160;&amp;#160;&amp;#160;The Microsoft Exchange Team Blog has a two part series on how to disable the Reply To All functionality using MS Exchange. Yikes. 
&amp;#160;&amp;#160;&amp;#160;&amp;#160;To me, it seems like an organizational disease or culture problem when you have to resort to blocking the feature at the Exchange level.
&amp;#160;&amp;#160;&amp;#160;&amp;#160;This function can be disabled at the single user [...]&lt;p&gt;&lt;br /&gt;&lt;br /&gt;
&lt;a href="http://www.codeforexcelandoutlook.com/blog/2009/10/on-being-a-responsible-outlook-user/"&gt;On Being a Responsible Outlook user&lt;/a&gt; is Copyright &amp;copy; &lt;a href="http://www.codeforexcelandoutlook.com/blog/"&gt;Code For Excel And Outlook&lt;/a&gt;. 
&lt;br /&gt;
&lt;a href="http://www.exceluser.com/cmd.php?af=928709"&gt;Click here for plug-and-play Excel Dashboards&lt;/a&gt;&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p><img src="http://i929.photobucket.com/albums/ad137/jp2112jp/toon61.jpg" border="0" alt="Reply To All" /></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;The Microsoft Exchange Team Blog has a two part series on how to <a href="http://msexchangeteam.com/archive/2009/09/29/452689.aspx">disable the Reply To All functionality</a> using MS Exchange. Yikes. </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;To me, it seems like an organizational disease or culture problem when you have to resort to blocking the feature at the Exchange level.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;This function can be disabled at the single user message level with a bit of VBA:</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ActiveInspector.CurrentItem.Actions(<span style="color: #800000;">&quot;Reply to All&quot;</span>).Enabled = <span style="color: #000080;">False</span></div></div>
<p><em>(from <a href="http://www.codeforexcelandoutlook.com/outlook-vba/redirect-messages/">Redirect Messages</a>)</em></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;You can disable the Reply function as well, for "announce only" messages:</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ActiveInspector.CurrentItem.Actions(<span style="color: #800000;">&quot;Reply&quot;</span>).Enabled = <span style="color: #000080;">False</span></div></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;And you can even stop messages from being forwarded:</p>
<div class="codecolorer-container vb default" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><div class="vb codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ActiveInspector.CurrentItem.Actions(<span style="color: #800000;">&quot;Forward&quot;</span>).Enabled = <span style="color: #000080;">False</span></div></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;Here's what happens when you try the menu option, press the hotkey combination, or click the toolbar button for any of these three choices:</p>
<p><img src="http://i929.photobucket.com/albums/ad137/jp2112jp/ReplyEnabledFalse.png" border="0" alt="Reply Enabled set to False" /></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;For ease of use, this code should be <a href="http://www.codeforexcelandoutlook.com/outlook-vba/resend-this-message/#toolbar">assigned to a toolbar</a>, either in Outlook or on an individual message. As far as I can tell, you can not disable these options without programming code.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;So save your co-workers from the e-mail storm: if your message does not need a reply, or you want to avoid the Reply To All issue, use these codes to manage your email.</p>
<p><br /><br />
<a href="http://www.codeforexcelandoutlook.com/blog/2009/10/on-being-a-responsible-outlook-user/">On Being a Responsible Outlook user</a> is Copyright &copy; <a href="http://www.codeforexcelandoutlook.com/blog/">Code For Excel And Outlook</a>. 
<br />
<a href="http://www.exceluser.com/cmd.php?af=928709">Click here for plug-and-play Excel Dashboards</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?a=MFk9Yc7CcX0:YSyT3nPzqlw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/codeforexcelandoutlook/kylx?i=MFk9Yc7CcX0:YSyT3nPzqlw:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/codeforexcelandoutlook/kylx/~4/MFk9Yc7CcX0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.codeforexcelandoutlook.com/blog/2009/10/on-being-a-responsible-outlook-user/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
