Programming Office 2010, 2013, 2016 addin / plugin
in Visual Studio .net: C#, VB.NET, C++

Add-in Express™
for Microsoft® Office and .net

Microsoft Office extensibility and Add-in Express

One of the major features in the Microsoft Office suite of products is the ability for you to write add-ins that extend the functionality of Office applications by adding your own UI elements and programming logic.

Add-in Express allows you to quickly start a new Microsoft Office extension project, using the Add-in Express wizards, visual designers, modules and components, without the need to have deep knowledge of Office COM add-in, Smart tag, Excel XLL (user defined functions) or Excel RTD server technologies.

Add-in Express wizards to create a COM Add-in, Smart Tags, XLL add-in and RTD server projects

Any .NET developer can start creating world-class Office plugins in Visual Studio, using their programming language of choice: Visual Basic .Net, Visual C# as well as Visual C++.

Developing Office COM Add-ins made easier

Add-in Express implements the IDTExtensibility2 and IRibbonExtensibility interfaces that provide you with access to the object and events of the add-on's host MS Office application.

It also includes plenty of components and designers for customizing existing Office menus, toolbars, and ribbons as well as adding your own UI components and more e.g. Advanced Task Panes for Excel, Word and PowerPoint and Advanced Outlook Form and View Regions.

By using the Office Primary Interop Assemblies (provided by Microsoft) or the version-neutral interop assemblies (included in Add-in Express) you can access Office objects and their events. This means you can create single code-base Office plug-ins that are able to support all versions and editions of Microsoft Office.

COM add-ins based on Add-in Express support all Office apps, namely:

  • Excel 2000 - 2016
  • Outlook 2000 - 2016
  • Word 2000 - 2016
  • PowerPoint 2000 - 2016
  • Access 2000 - 2016
  • Project 2000 - 2016
  • Publisher 2003 - 2016
  • Visio 2002 - 2016
  • InfoPath 2007 - 2013
  • FrontPage 2000 - 2003
  • MapPoint 2002 - 2013

For more information see Programming Office COM add-in.

Excel specific solutions: RTD servers and XLL add-ins

With Add-in Express you are not limited to just creating Microsoft Office COM add-ins, you are also provided with components and designers to create advanced Excel GUI with RTD server and XLLs. Using Add-in Express you can create a single project that can contain multiple Office extensions (UDFs, XLLs and COM Add-ins), that will all be loaded into the same AppDomain, allowing for simplified deployment and code reuse.

XLL is an effective technology that enables you to create your own Excel user-defined functions (UDF) of any-scale. Add-in Express provides visual designer and components that help you create XLL add-ins that can contain one or hundreds of different functions (e.g. Actuary specific formulas) as well as support all versions of Excel.

An RTD server turns Excel 2002 - 2016 into a client for any real-time data source, enabling you to build powerful self-updating worksheets or dashboards for your customers. Add-in Express RTD solutions are inproc-servers (DLL) that can contain an unlimited number of real-time data topic, linear or nested.

For more information see the following sample projects: Excel RTD server, Excel Automation Add-in and Excel XLL.

Built your own smart tags

Add-in Express utilizes both ISmartTagRecognizer and ISmartTagRecognizer2 interfaces that will enable you to develop static (list-based) and dynamic recognizers.

Smart Tags built using Add-in Express can include one or many smart tags and each can contain its own action list and one or multiple recognizable words. By using the smart tag specific events you can easily create dynamic recognizers.

The smart-tag library you create with Add-in Express can support all versions of Office and all Office applications that are compatible with Smart Tag technology such as Microsoft Word, Excel, PowerPoint and Outlook 2002 - 2016.

See how to write a sample Word smart tag in .NET.