Question

At the moment I must maintain an Excel-Application, which consists of many VBA-Modules. For me it has the touch like a legacy system and VBA looks like a language of recent days. Makes it sense to think about a migration to C# and a .NET based Office application? What are the pros and cons for such a migration respectively for Office-automation with .NET in general? Or is VBA still the better way for developing Office-applications and Office-automation? By the way, I am an experienced .NET developer.

Was it helpful?

Solution

This is just an opinion, but I would suggest that you stick with VBA for your standard development with Excel. Using .NET is definitely the next step, but it makes your Excel development much harder.

Using .NET has many advantages, mostly regarding strong-typing, but VBA has enormous advantages over .NET when it comes to deployment. VBA is also an easier language to start out with, especially for working with Excel, which has many members that do not have strong typed return values.

Overall, I would suggest that you use VBA for your day-to-day development, but learn VB.NET or C# on the side so that your programming skills can grow outside of the Excel arena. Eventually, your .NET skills can become strong enough so that you will prefer to use it over VBA, but you will have to become pretty good at .NET for the same day :)

Anyways here is the link needed for transformation

All the Best !!!

OTHER TIPS

NET developer, currently working on a VBA application. There is a large performance hit on opting .NET based office development. But its not the complete story. If there are very few interaction between .NET code and the Application then you can go for .NET based implementation. Other wise i will suggest go with VBA. Its not very hard on language and framework and tones of help is available on line.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top