|
One of the more difficult issues I have faced in the journey to freedom from proprietary software has been Visual Basic for Applications or VBA for short. Now, you are asking a couple of questions at this point. First of all, "What's VBA?" Visual Basic for Applications is a tool supplied by Microsoft to users of their Office suite. You have probably used it without even knowing. If you use macros in MS Office, they are simply a series of commands that are recorded in Visual Basic. While you can use the macro recorder to set up nice simple automations, using the editor available in Office, you can transform a simple spreadsheet into a hugely complex stand alone, executable program. This is very convenient for rapid application development. Combined the features of Microsoft Excel such as data importing and web queries you are able to build quite elaborate data reporting and analysis tools. At least that's what I did. This leads us to the second question. "Why is this a problem?" Microsoft appears to have a philosophy, which states everyone should buy the latest copy of Microsoft Office even if they currently have a perfectly good copy of the previous version installed. Part of this 'theoretical' philosophy is to remove legacy support, meaning macros written in an older version either do not function in the newer version or are automatically upgraded which then makes it incompatible with the older version. Of coarse when you try to get tech support for this situation you are politely informed that "We no longer offer support for previous versions of that product, you must upgrade to Microsoft Office Two Thousand what-the-hell-ever." Two or three times rewriting a reporting program, you find that this isn't such a rapid way to develop an application. Now to solve this problem. One option I used at first was to rewrite the tool with a web based tool. I have several Linux servers running Apache, MySQL and PHP. This works for some things but not standard spreadsheet work which is essential for most office work. Luckily I found a better solution. IBM is now offering a modified version of OpenOffice.org as their Lotus Symphony Suite. I had tried it out but saw no real need to switch from my trusty old OpenOffice. Until now... Check out this article. (Opens in new window) Yes, Lotus Symphony offers (limited) support for Visual BASIC for Applications. Yes I did say limited. Some of my VBA programs are pretty extreme and far beyond the scope of what Symphony is intended to address. However, that being said there is a certain sense of accomplishment when you are running a VBA macro from an Excel spreadsheet on a Linux desktop. Oh yeah, did I mention that Lotus Symphony is cross platform just like OpenOffice.org? I believe the playing field has just leveled a bit. Click here to go download IBM's Lotus Symphony 3 Beta 2. Note: This is NOT the standard release. It is a beta available from this link. The standard download is still at 1.5 and does not support VBA so make sure you get the version 3 beta or you will be very disappointed.
|