You have built up an expertise and body of work in VBA, but your company is now seriously considering moving to Google Apps and ditching Microsoft Office products. Is it the end of the world? Actually, in the end it's not so hard. You can find the applicationand test data in the VBA to Google Apps Script Roadmapper project download. You can read a summary in this blog entry. This uses the GAS mcpher shared library. What is Google Apps ScriptVBA is to Office as Google Apps Script is to Google Apps. Those tasks to automate repetitive sequences, or extend the functionality of Office can usually be done in Google Apps Script. Not only that, but since it is really just javaScript, you could either know the basics already, or by learning it, you will be able to write regular web applications as well as to extend Google Apps. Google Apps Scripts 'live in the cloud' and form part of the tool set available to make your Google apps experience more fulfilling.
Transitioning from VBAThese following article set will take you through an accelerated program to learn javaScript and Google Apps Script with an emphasis on how to use it to do things you already know how to do in VBA, by showing you how it's done in each language.
First observation - it's painfully slow compared to the same thing in VBA, but see Optimizing access to sheet values. This a feature rich caching capability, both read and write, and applying to all range methods that have both a set... and get... version.
Many of these libraries are now part of a Google Apps Script shared library you can incorporate in your own project.
AbstractionI have talked about data abstraction extensively on this site, meaning separating the physical data location from the data itself so that procedures are not aware of where the data is coming from, or even that it originated in Excel. This approach will serve us well, since it means that if we simply change the Data Manipulation Classes to understand about the Google Apps Data structures, the bulk of the logic will remain intact, even if they do have to be translated.
If a regular visitor to this site or the associated blog, you will know that many main functions are executed in one or a just a few lines of code, and generally speaking these avoid addressing specific Excel capabilities through data abstraction. Once the underlying libraries and classes are ported to Google Apps, it will be a simple job to port most of the Excel procedures on this site.
Things we need to get started
|

