Search code examples
excelexcel-2013apps-for-office

Choosing an Excel development technology


I have an Excel spreadsheet and I've been tasked with displaying the data in an interesting way and adding some interactivity. I am trying to choose between creating an App for Office or using VBA macros to enhance the spreadsheet. What technology makes the most sense for my situation?

  • I am using Excel 2013 and Windows 7 (All users of the spreadsheet have the same environment).
  • I am not a software engineer, though I have some programming experience.
  • I do not need to access any external services (database, web API, etc.).
  • I do not need to access any Office documents besides the spreadsheet.
  • I need the code to be easily distributed along with the document.
  • The code needs to be available offline
  • I do not have Visual Studio

Primary concerns:

  • Ease and enjoyment of development
  • Ease of manipulating the spreadsheet (I am concerned that I won't have as much control over the document with the Apps for Office Javascript API)
  • Ease of distribution (I will not be able to setup an app store within my organization)
  • Attractiveness and usability of the end product
  • Availability of resources and documentation

Solution

    • Ease and enjoyment of development

    this will initially depend on what you are used to: if you are familiar with the OO environment, then stick with VBA. likewise, a Java/web background will see you settle into the Apps environment more quickly

    • Ease of manipulating the spreadsheet

    I can't speak with experience of using Apps for Office, but I can theorise that MS Office will prove to be a far more feature-rich, stable and integrated development environment for some time, if only because it's already been around for 20 years.

    • Ease of distribution

    MS Office add-ins can be fiddley to manage if users are not based on a single network, but this has long been the case and there's plenty of solutions/work-arounds published on the web

    • Attractiveness and usability of the end product

    unless you are going to start retailing the product, I think MS Office is more than viable here

    • Availability of resources and documentation

    again, there's 20 years-worth of forum discussions, blogs and expert solutions for MSO at your fingertips, for free

    Also, I believe the MSO software license is a one-off overhead, whereas Office 365 etc is subscription.