Similar Posts

Subscribe
Notify of
12 Answers
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
EchoTech
3 months ago

Python is undoubtedly more future-proof than VBA. While VBA is suitable for fast, small automation in Excel, Python is much more powerful and versatile. With Python, robust, safe and reusable automations can be created, something that VBA often cannot offer to the same extent.

In addition, VBA has lost importance in modern software development. Nowadays it is only rarely used as it is outdated compared to more modern technologies such as Python, Office Scripts or Power Automate.

Microsoft itself has stopped the further development of VBA. There are no new features or updates, but only security patches and bug fixes. In addition, VBA works exclusively in the desktop version of Office. There are numerous limitations on MacOS, and in the online version of Office (Microsoft 365), VBA is not supported at all.

In my opinion, it’s just a matter of time until the support for VBA is completely set, as it simply no longer meets the requirements for modern automation solutions.

Suboptimierer
2 months ago
Reply to  EchoTech

VBA has never been really practical to my experience. It was a playground, maximum for a few school xperimente or if you wanted to deal with the object model privately.

For a long time, it has been better not to automate Excel intrinsically, but to approach interfaces from the outside.

The main manko of VBA is the poor distribution. Security policies and finally own file extensions were stones thrown in the way (even if they have their permission). Then you copy the file with the macros somewhere or send it to 10 mail recipients who work on it (if it is not recognized as maleware and deleted). You recognize a mistake or want to expand the macro. What are you doing? What about the well maintained data of the mail recipients?
What does a company do when the VBA expert leaves the company?

Basically, I would try to control Excel as little as possible. It is best to store the logic and to fill Excel( templates) with data only. In the templates, the formatting should already be defined.

daCypher
2 months ago

I just saw that Python is being introduced in Excel. Just clicked on Update. However, if I’m a business user and I’m in the insider channel, it’s funny.

From what I could find on the Internet, it looks very exciting at first glance, especially because you can apply python scripts to individual cells and as a return not only text values, but also python objects, with which you can then continue to calculate.

VBA has a few problems that quite restrict the use.

  • You can usually not send Office files with VBA code by mail because the files are recognized as spam.
  • VBA only works in the local installations of the Office programs, but not in the web versions
  • The VBA editor has only a very simple code completion and no documentation function (such as Javadoc or the XML Docs in C#), which facilitates development in modern programming languages.
  • You cannot sort your modules into a folder structure
  • You can’t make version management with Git (which probably won’t go with the Python formulas)
daCypher
2 months ago
Reply to  EverydayPerson

I have never done this before, although I have developed professional applications in VBA (MS Access) for years. There were other problems. The forms used with the time and time until they could be edited (or at each click on a control element you had to wait one minute until you could edit it), when the file size has grown over 2GB, the database no longer worked and you had to hope that when compressing no data could be lost, and (sometimes) the program has suddenly issued strange error messages, and you had to recompile with an undocumented command.

EchoTech
2 months ago

At ChatGPT you can select the version in the ComboBox at the top left. There are now six models, and you can add countless extensions like Python, DesignerGPT, ExcelCreator and many more. In the beginning I was also skeptical, but by now I use it as a developer daily for smaller tasks. I can only recommend you looking at it once. It has often helped me with bug fixes that I didn’t get on with.

daCypher
2 months ago

Where can you choose different models? I’ve been trying with it a little bit. It is well suited to build a base and do the rough writing stuff, but the fine tuning must still be done by hand

Suboptimierer
2 months ago

VBA is only kept alive for reasons of downward compatibility and is hardly further developed.

Personally, I know myself well in VBA and, if at all, I am going to be very late.

I would always recommend newcomers to alternatives if there are them and are official. This is a better investment in the future.

And the more questions about non-VBA automation come, the greater the incentive for me to deal with the alternatives.