VBA versus .NET
During a LinkedIn discussion on the value of VSTO add-ins, I wrote about a recent experience choosing between .NET and VBA for Excel:
Some recent reasons I decided to use .NET over VBA:
Asynchronous operations and threading
Version control, both via TFS and on users' desktop
Developer understanding - many shops know C#, not VB (VBA)
One recent reason I needed to revert to VBA:
A portfolio manager needed over 49,000 rows executed and returned to a sheet. When using .NET I could easily uses events to have data retrieved off-hours, execute multiple queries simultaneously and asynchronously, cache the data, and use LINQ to filter it, but VSTO took 40 seconds to write the data, while VBA took seconds. Even though I had all that power with .NET, that slow worksheet dump killed the use of .NET.
: I eventually found a solution in .NET.