At work I have a large code base written in VBA (about 13 active projects) for both Access and Excel applications.
I have been trying to refactor some things, but several factors are making my work difficult, like:
- The IDE that comes with VBA is very old (based on the Visual Studio 6, 1998 )
- VBA itself has many limitations compared to languages like C # and Java
- VBA projects are added to the
.xls
or.mdb
file, which makes it difficult to use in version control (Git) software - We have more than one developer, which makes working on projects simultaneously impractical as we can not version
I try to look at these points, I'm thinking of alternatives to get around those problems causing minimal impact.
It is not feasible to migrate all projects to a new architecture at once because of the complexity of some.
I have tried compiling DLLs in C # and interconnecting them with VBA from COM
, but this has brought more problems than it helped.
Question
Is there any way to gradually migrate these solutions into VBA, merging what already exists today with a new architecture?
Or in the worst case, where do I have to stay with VBA, how do I change the default VBA IDE to some more modern one that maintains integration with Office?