VSTO & .NET & Excel

January 28, 2009

VSTO news

Filed under: .NET & Excel, VSTO & Excel — Dennis M Wallentin @ 5:48 pm

In a recent blog by Soma Segar, Office client developer enhancements with VS 2010, indicates that the next version of VSTO, version 4.0, comes with some great news, especially the PIA-less interoperability. In addition, C# will have an improved support for interoperability coding against Office.

From a general point of view I hope that the upcoming VSTO version includes new extension for Pivot Tables as well. If so then we can use ADO.NET/LINQ to populate Pivot Tables. VSTO 3.0 includes extensions for Chart, ListObject, NamedRange and XMLMappedRange and the Pivot Table, at least for me, is a natural object of this collection.

For Excel developers perhaps the most important question is about UDFs. Using VSTO 3.0 for UDFs, both add-ins and with workbooks, requires that we write VBA wrappers for every UDF. Compared with the other options we have; using VBA, using managed Automation add-ins and using XLLs, using VSTO for UDFs is simple the less attractive approach to use. Will VSTO 4.0 make a change or not?

Hopefully some of the news, like the PIA-less interoperability and customize the deployment package, also target the Shared Add-in template. After all, using managed COM add-ins is still an important area.

The high pace of releasing new VSTO versions may create an unwanted situation; today’s issues are not solved with the present version. In other words, instead of releasing major SPs new versions are released. The question is to which degree we should follow the pace that Microsoft put up. In my own opinion I see a need to accept to upgrade until VS and VSTO have reached the maturity stage. When this happen we will get a similar situation with the development tools as with Excel, i.e. new versions only compete against older versions.

Speaking about VBA, I have spent considerable time with the Ribbon UI and VBA. In VSTO we have fully support for the Ribbon XML, we have access to a Ribbon Visual Designer where callbacks can automatically be generated. In VBA we do not have the same support and in fact have no support at all. It’s vital for us VBA developer to get access to an object model to manipulate the Ribbon UI,  get a standard GetCustomUI event added to the Workbook object and a CreateCustomUI method added to the Commandbars Objects. In view of the present situation I can only conclude that VBA is classified by Microsoft as a second class citizen.

Kind regards,


January 4, 2009

.NET Framework Client Profile

Filed under: .NET & Excel, COM Add-ins, VSTO & Excel — Dennis M Wallentin @ 1:57 pm

Recently there was a comment at Simon Murhpy’s blog about the file size of the .NET Framework Redistributable package and how it has grown for every new version:

  • .NET Framework 1.0 Redist: 19.7MB
  • .NET Framework 1.1 Redist: 23.1MB
  • .NET Framework 2.0 Redist: 22.4MB
  • .NET Framework 3.0 Redist: 50.3MB ( x86 )
  • .NET Framework 3.0 Redist: 90.1MB ( x64 )
  • .NET Framework 3.5 Redist: 197.0MB

Suppose we have a VSTO solution that was built on the latest version of the Framework and suppose also that the solution will be used on computers that, at present, do not have .NET Framework installed.

Based on the above information we would conclude that we need to deploy a nearly 200 MB large file. Are we mistaken or do we actually need to use this redistributable package?

Last year MSFT released a light weighted version, .NET Framework Client Profile, which is a subset of the full .NET Framework 3.5 SP-1 that target client applications.

For a great introduction to the .NET Framework Client Profile please see the following online resources:
.NET Framework Client Profile Deployment Guide
Introducing .NET Framework 3.5 SP1 Client Profile Preview

To download the package please use the following link:

Kind regards,

Blog at WordPress.com.