Office Development–The Good

Office Development - Good

So after a small introduction to the “Ugly” VBA, the “Bad” VSTO, we end with the “Good” … well end … I guess the end is just the start of a new experience of an Office Development platform not familiar to most people. It is not included in the box like VBA, not using the languages most Microsoft developers are familiar with.

So what is it? Office Add-ins, yes … this time with the capital A, indicating that we discuss the –new- way of developing Office customizations, are built using well known web development technologies like HTML, CSS and JavaScript.

By doing so Office Add-ins run across multiple versions of Office:

  • Office for Windows Desktop
  • Office Online
  • Office for the Mac
  • Office for the iPad

This is most likely not all, with Office emerging on other platforms like Android and Linux distributions these options will be on the shortlist as well. We will research these options on a later time.

So how does this work?

The architecture is a little bit different than the other technologies, although you can debate that the Office Add-ins mechanism looks like the way it was done with VSTO.

This is how it looks like with the JavaScript Office Add-ins:

DK2_AgaveOverview01

There is an Add-in manifest in the XML format and a web solution hosted on an arbitrary web server. The image shows HTML + JavaScript but it can be more than that as long as valid web technologies are in place. The manifest contains all sorts of settings (we’ll dive in to see what is in there also later on) and it defines what Office clients are used and what it needs to run.

The Office JavaScript API first implemented some basic Excel features and even less Word features but today many more clients are supported and the Excel and Word features are getting more mature over time. The JavaScript API for Office contains objects and members that you need to build your add-ins and interact with content in your Office documents and web services.

If you look at the API you will see that you recognize a lot of your ‘old’ Office Object Model. Some are close to what they were, others needed to be adjusted and there are also new options.

Ok, the starter is here … in my next posts I will pick each of the items and look at the details. As I said earlier, this for me is probably like you a learning experience. I’ve been looking at it for years now in a helicopter/management overview but I decided I need to learn the ins and outs of the new platform. While doing so I try to teach you as well by blogging about it. Trying to keep it simple and getting more complex over time.

Let’s see if Office Add-ins are really the “Good” as advertised and can they do the same as we can do with VSTO add-ins….

Advertisements

About Maarten van Stam
I'm a Software Engineer, working at one of the top 3 accounting firms. Technology watcher, always looking for news and trends on technology. Received 13 Microsoft MVP Awards.. "My work is my hobby/my hobby is my work" - so you can find me almost at any time near a computer. If I'm not there it's most likely that I spend my time with my family - wife (undisclosed ;-) ), daughter (15) and son (13).

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: