Sunday, December 4, 2016

Excel Add-in Development | Framework Criteria

Although the desktop may be slowly dying as phones, tablets, and other devices encroach; many businesses and consumers remain loyal fans and active users of Microsoft Office and Excel. According to Microsoft, there were 1.2 Billion users of Office as of March 2016.  Excel’s core capabilities include a flexible tabular data representation indexed by rows and columns, a charting module, a catalog of built-in functions, and a rich programming model using VBA.  For heavy, data intensive commercial and academic users of Excel, there is a need to extend Excel’s core capabilities with custom calculations, new data sources, real-time refresh, and embedded GUI’s.

In this series, I will be covering several topics.

  • Excel Addin Framework Evaluation Criteria
  • UDF
  • Embedded GUI
  • RTD
  • Portability
  • Deployment
  • Troubleshooting

There are several criteria when evaluating which Excel addin framework to use.

 

Criteria

VSTO

Add-in Express

Excel DNA

PyXLL

Platform

Microsoft COM, VSTO, C/C++, .NET, VBA

.NET

.NET, VBA

Python v2.3-3.6

Price

MSDN

Commercial.

$500-900/dev/yr

Free

Commercial.

$100-200/dev/yr

Portability

No. PIA version dependency.

Has portability layer for O2000-2016.

Use with Net Office to support O2000-2016.

Supports O2000-2016.

Open Source

No

No

Yes

Yes

Support

Yes

Yes.

Yes

Yes

UDF

Yes. Native

Yes

Yes

Yes

Ribbon

Yes. Native

Yes

Yes

Yes

RTD

Yes. Native

Yes

Yes

Yes

GUI

Yes. Native

Yes

Yes

No

Office Breadth

Yes. Native

Supports Excel, Word, and Outlook

Only Excel

Only Excel

History

1997

1998

2005

2010

If you are looking to build an Excel product suite or family of add-ins, then I strongly encourage you to examine Add-in Express or Excel DNA.  Both are fully featured and have broad language support (unlike PyXLL), and both are much easier to use than the native Microsoft VSTO libraries.  Both have active user communities with 1000’s of developers each.  

If you intend to support other Office products such as Word or Outlook and are also not comfortable with using open source software, then choosing Add-in Express makes wise sense from a long-term maintenance, TCO perspective.  

If you are budget conscious and are developing a PoC or MVP for just Excel, then choosing Excel DNA and Net Office is a solid starting point that you can build upon.

If you intend to develop Excel add-ins which use native, platform features that are idiosyncratic to a specific version of Office (which I do NOT recommend unless it offers durable competitive advantage to your customers), then use VSTO.

No comments: