Is there a recommended IDE for developing Excel VBA macros that provides reasonable error reporting and code completion?
Currently, I'm using "Microsoft Visual Basic For Application" IDE which comes with Excel 2007, but so far, it is less than ideal.
Even a plug-in to Vim or Emacs will be great.
The VBA development software is included with each component of the Microsoft Office suite of programs, including Excel. Starting the VBA development software places you in the VBA programming environment IDE, which provides you with a number of tools for use in the development of your project.
VBScript is gone. Once a scripting language to compete with JavaScript in web browsers, VBScript is now disabled by default in Internet Explorer on all supported versions of Windows after a recent Windows update. But VBScript has been fading away for years.
You can call VBA code from Office solutions created by using Visual Studio, and you can also call code in Office solutions created by using Visual Studio from VBA.
I use and recommend Rubberduck. Description from the website:
Rubberduck is a very active open-source COM add-in project that integrates with the Visual Basic Editor to enable the features every programmer wants to have in their IDE. From unit testing to source control, from code inspections to refactorings, programming in VBA will never be the same.
You're pretty much stuck with MS's IDE, but there are some good add-ons available. The two that I use constantly are:
Take a look at this SourceTools.xla. It is not a IDE, but an add-in for VBA that allows to save/read the all source files from your project into actual text files for use with source control. I have been using it for at least a year and I am very happy. It even allows direct use if CVS or SVN source control systems for commits/diff, but you don't have to do it from the IDE. And it is free and it comes with the source code unlocked if you want to tweak it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With