Frequently Asked Questions
+ What Excel version do I need to use the addins and/or workbooks found on this site?
+ Why do some of the addins require administrator rights?
+ Can you modify (insert addin or workbook name) for me?
+ Can you unlock or provide the password to (insert addin or workbook name)?
+ I pasted some code into Outlook's VBA editor, but it won't run!
+ Are you available to help me work on my project?
+ Why are some sites missing from the VBA Search Engine?
+ What software do you use?
+ Can you help me solve the problem I'm having with my program/code?
+ System Requirements
What Excel version do I need to use the addins and/or workbooks found on this site?
As of Sept. 2011 I am in the process of converting all XLA and XLAM files (addins) to VB6 COM DLLs (hey, better late than never). That means the information below will be outdated shortly. Soon, all addins will work in all versions of Excel, and in all operating systems from Windows 2000 onward, but will still be restricted to 32-bit Microsoft® Office only.
In general, Excel 2003 is required because certain features used in some of the workbooks (Lists, XML) were only made available starting in Excel 2003. Some files are 2007/2010 only, as indicated by the file extension (.xlsx or .xlsm). There's really no reason to be running a version of Excel older than 2003 anyway, there are so many benefits to upgrading.
Addins are separated by version: 2003 and 2007. You should download the appropriate one for your Excel version:
Excel 95 – do not download
Excel 97 – do not download
Excel 2000 – download '2003' version
Excel 2002/XP – download '2003' version
Excel 2003 – download '2003' version
Excel 2007 – download '2007' version
Excel 2010 – download '2007' version
They should work in all operating system environments (32 bit Office only), but have only been tested in Windows XP and Vista.
Please note that I will no longer be supporting any usage of addins in other environments or in Office versions lower than 2003.
Why do some of the addins require administrator rights?
The AddIns that require admin rights to install, need them because they modify the registry and install VB6 runtime files into protected areas of Windows. These actions are only allowed by administrators.
To install those AddIns that require administrator rights, at least one of the following three conditions must be met:
- You are logged in as Administrator.
- You have administrator permissions.
- You run the setup program as Administrator
To run the installation program "As Administrator", instructions for each operating system are as follows:
- Windows 2000: HOW TO USE WINDOWS 2000: RUNNING A PROGRAM AS AN ADMINISTRATOR
- Windows XP: HOW TO: Use the RUN AS Command to Start a Program as an Administrator in Windows XP
- Windows Vista: How to use User Account Control (UAC) in Windows Vista
- Windows 7: How do I run an application once with a full administrator access token?
Can you modify (insert addin or workbook name) for me?
If I feel it will benefit all users, I am open to making changes to any of the addins you find here. If the modification you want is specific to you or your company only, I can do it for a fee.
Can you unlock or provide the password to (insert addin or workbook name)?
In general, no. There is a reason why some of the files on this site are password protected. 99% of it has to do with support — some people will try to change formulas or edit the VBA, unintentionally break working code, then contact me to try and find out (for free) why it won't work. Password protection (for the most part) prevents people from creating support issues. The addins are especially susceptible to this, that is why they are packaged in an installer, automatically added to Excel and password protected — to limit the amount of "touching" that some people like to do.
Also note that with VB6 compiled DLLs, it isn't possible to share source code by "unlocking" files because there is nothing to unlock. In that case, entire projects are made available for download.
The other 1%, I'm sorry to say, has to do with spoiled freeware snobs who feel that because something is on the Internet it should be free and get really offended when you suggest otherwise. Because apparently, asking to be voluntarily compensated for providing a service is greed, but not wanting to spend money isn't. These files take a lot of hard work and sometimes I'm simply not interested in sharing that hard work for free (or at least without asking for a contribution). Sometimes I give out source code to people who approach me nicely, but if I detect a sense of entitlement I shut down.
I understand that some people like to peek under the hood of some of these files to learn how they work, and this approach will keep them out. I do post a lot of sample code on this site, as well as my blog, however, which hopefully should more than make up for any code that can't be viewed.
I pasted some code into Outlook's VBA editor, but it won't run!
Visit My Outlook code won't run to set up Outlook so it will run your code.
Are you available to help me work on my project?
At this time, no. Due to time constraints I am no longer accepting freelance work. If this changes in the future I will open up the project request form.
Why are some sites missing from the VBA Search Engine?
Unfortunately, there are some websites (mostly older ones but some new ones as well) that have very poorly written VBA code. When I started learning VBA, I relied on some of those older sites. Looking back, I'm embarrassed to see how bad my code was, and I realize that some of my early mistakes were due to reliance on coding habits I developed from those sites. Some of those sites are even run by (current or former) Microsoft MVPs and rank well in the search engines. It took an excessive amount of hard work to undo those habits and learn better ones.
I am referring to code that:
- overuses Select/Selection pairs
- uses For Each to go cell-by-cell through a range instead of reading ranges into an array (once or twice in a pinch is OK, but EVERY time?)
- is overly simplistic: "Here's how to display a message box … " (followed by two lines of code with MsgBox) in other words, something you can find and should look for in the F1 documentation
- appears quickly scribbled (or even recorded) and generally inefficient, and is provided "for beginners"
- hasn't been touched or updated in years
- is utterly devoid of proper indentation or formatting
- even worse, is deprecated or superceded by methods introduced in Excel 2003 or greater
Oddly, the quality of the code seems directly related to the quality of the website.
While the goal of the VBA Search Engine is to locate VBA code, I believe it is a disservice to you and the general Office developer community (read: those who have to help you when you copy bad code and get stuck) to include sites that have badly written code. Let's stop sending traffic to bad code and maybe it will go away.
I will not add sites:
- that include marginal amounts of VBA code but exist primarily to sell a product or service
- that include proprietary code that only works with a (paid) product
- that have vague or no contact information and feel group-edited
- that have not been updated to at least Excel 2003
What software do you use?
See Credits page.
Can you help me solve the problem I'm having with my program/code?
Due to volume, I will no longer answer "how to" questions privately via email.
If you have a "how to" question, ask in a public forum such as Stack Overflow, MrExcel or VBA Express where others besides me have the opportunity to assist you and future generations will benefit from having a publicly available answer. Send me a link to the posting and if I am able, I will assist.
Please do not use either of these forms to ask technical questions or send me files you want me to look at.
I understand you need help — posting in a forum is the best way to get it.
Before running any VBA code samples from this site, please make sure your computer (or the one you are targeting with code) meets the minimum requirements.
Minimum supported version: 2003 (Office 11)
Code found on this site may work with other versions, but was written in Office 2003.
Internet Explorer Automation
For code samples that automate Internet Explorer, you will need to have Internet Explorer on the local machine. Although highly unlikely, if you do not have Internet Explorer you will not be able to run code samples that automate it.
Some code samples require MSXML. If so, you will need MSXML on the local machine in the %windir%\system32 folder. For example, if your Windows folder is C:\Windows, MSXML is located in
On this site, I use MSXML 6.0 (msxml6.dll). If you have a lower version of MSXML, you will need to adjust the code sample to use the version you have.
Visit MSXML Object Library Routines for a class library and DLL you can use to parse XML retrieved from the web.