If you have a business account for Google Mapping, you’ll need to provide your client id and crypto key. These things are meant to be kept private, so I did not provide a mechanism for parameterization of the url to include these. However I have provided the encryption functions needed to generate them from VBA.  You’ll find all this in the latest version of googlemapping.xlsm, downloadable from here.

apiKeys module

You need to modify two functions here to supply your key and your clientID. Substitute your key value and clientID. You can obtain them here from the registry or however you choose to protect them. You simply need to return them as below.

googleMaps module

For the moment, I’ve only applied this to the section that does geoCoding, since this is rate limited section. If you need the keys you specified in the apiKeys module to be used, then uncomment the code below in the googleMaps module so that it will create a signature for each query it does

Implementation details

Google do point you at how to do this using various other languages, but there is not a VBA solution, so below is how to do it.
The url is signed by hashing your query url and your key using SHA1 encryption. VBA doesn’t have the ability to do that directly, but a solution can be hacked together, mainly from clues on various stackoverflow postings (apologies for not crediting them here- i didn’t keep track). These have been implemented in the apikeys module.
For more on mapping see, Using Google Maps. For help and more information join our forum,follow the blog or follow me on Twitter .