Live data from Hacker News

Will VBA Die? (2019)

thespreadsheetguru.com

141–150 of 170 posts

Re: Will VBA Die? (2019)

#141
There's really two camps of VBA, the "application builder" and the "spreadsheet functionality" camps.

Application builders are trying to build interfaces for things that will run in a non-spreadsheet (i.e. non-reactive, not always-recalculated-to-be-consistent) mode. That's bound to be brittle, because that's not what Excel is for.

Spreadsheet functionality extending people OTOH write almost 100% what in ordinary programming is known as "pure functional style". Too often to write complex formulas in Excel (even something as simple as the Black-Scholes equation) people have to use multiple cells to keep things tidy and debuggable. You can use VBA functions for that. You can also write short loops to "solve for zero" with the bisection or Newton method etc. as long as they don't run for long. None of that interferes with spreadsheet semantics.

Re: Will VBA Die? (2019)

#142
post #63

Nah... why should it? It works and it does what it needs to do and more if you decide to hook into the Windows API or Mac’s API. Want to parse 500mb structured XML file? Okay. Takes 3 seconds or so. I had a lot of fun creating a full featured & modern look & feel application using Excel’s VBA runtime as my platform. Sure... I had to create everything from scratch, but learned so much while doing it. Kind of miss it a…

Your Excel+vba application’s features remind me of when I joined an investment bank in 2000. I had come from an insurance company where I was considered the Excel\vba wizard, and I was impressed, in the extreme, by my new colleagues’ approach to Excel development. Even during the interview process I had realized that, when it came to vba, I was but a babe in the woods. They had auto-updating code (when you “published…

Back then there were a few book that talked about the "Internals" of VBA and taught a lot of tricks like manipulating the pointer, etc.

But I do believe that people should turn to better tools. I think at least they could use VB, which is a proper language and has support for version control and other stuffs. It's also very easy to use VB to manipulate Excel, much easier than C#.

Re: Will VBA Die? (2019)

#143
post #63

Nah... why should it? It works and it does what it needs to do and more if you decide to hook into the Windows API or Mac’s API. Want to parse 500mb structured XML file? Okay. Takes 3 seconds or so. I had a lot of fun creating a full featured & modern look & feel application using Excel’s VBA runtime as my platform. Sure... I had to create everything from scratch, but learned so much while doing it. Kind of miss it a…

Your Excel+vba application’s features remind me of when I joined an investment bank in 2000. I had come from an insurance company where I was considered the Excel\vba wizard, and I was impressed, in the extreme, by my new colleagues’ approach to Excel development. Even during the interview process I had realized that, when it came to vba, I was but a babe in the woods. They had auto-updating code (when you “published…

Not to mention circumventing the usual corporate app deployment BS...

Re: Will VBA Die? (2019)

#144

Excel is one of the reasons I want to leave a career of Business Analyst behind. Regardless of the process, the last step is always to dump the data into Excel and spend tons of time to create good-looking charts and tables. It usually takes me a full day to do that plus write wiki pages in Confluence (another pain point). I just want to stay away from spreadsheet -> which means I need to get further from business an…

I think you may find R an excellent tool/ecosystem for that kind of work.

I'm actually trying to break into BI or DE, so Python is my first choice. I also have some experience with C++ but it is not that useful for corporate development nowadays.

Re: Will VBA Die? (2019)

#145

I wish Microsoft would just make a CSA already, c# for apps. This would be a huge win on so many fronts that I am shocked they havent done it already. Increase C# mindshare. Better Lang means a better ecosystem. It's a free win. It's also an ad for office. I started appreciating Outlook and Excel once I had vba filters and maps

It's just too much effort for nothing. People using VBA for automation pretty much live in the ecosystem of MS Office so it's not a big win for them. Plus MS has to spend huge sum of money to incorporate C# into Office.

And we already have VSTO.

Re: Will VBA Die? (2019)

#146

Earlier quoted context omitted.

That's always been the problem for me, I don't use it often enough to become fluent with it.

You're missing out. As a full time Linux user (since a year), PowerShell is by far the best shell out there (once it starts after 5 secs)

I'm not going to start using it for the sake of it. Some tools I just dip in and out of when I need to. Build software is the same, I haven't modified my build scripts for a year.

Re: Will VBA Die? (2019)

#147

Earlier quoted context omitted.

Your Excel+vba application’s features remind me of when I joined an investment bank in 2000. I had come from an insurance company where I was considered the Excel\vba wizard, and I was impressed, in the extreme, by my new colleagues’ approach to Excel development. Even during the interview process I had realized that, when it came to vba, I was but a babe in the woods. They had auto-updating code (when you “published…

What would the role names be for positions like this at an IB? Been interested in this type of work.

Something called "Desk Developer", "Deskdev", "Rapid Application Development" or "RAD".

I was in the Deskdev team in an investment bank for 4 years, great fun and I learned a lot about Excel.

Re: Will VBA Die? (2019)

#148

Earlier quoted context omitted.

However, it would take a lot of effort to maintain that 30K+ lines of VBA application. But I think that's because the infrastructure at that time was archaic. If it's today you would probably ditch Access for SQL Server and build reports with something more modern.

Maintaining VBA code is probably easier than maintaining C code. You have all the tools to structure things nicely. You even have classes. One problem is that you can’t version control Excel or Access code. I think that’s the biggest weakness.

I used to use a weird excel extension that I found somewhere that would export all the modules as text and push them to a subversion repo.

Re: Will VBA Die? (2019)

#149
post #13

Microsoft should rather provide a better path toward office automation rather than just frustrate users. As I have seen it, javascript isn’t even remotely close to the sort of integration that made the success of VBA. Like how can I save a javascript macro as a user? Javascript user defined function? VSTA was a good attempt in its time, a mini visual studio integrated in office with VB.net and C# instead of VB6. That…

Agreed. JavaScript has no real upside here besides being fashionable. whereas built-in C# with access to the .Net framework would be really powerful.

Especially with Microsoft's creation of Blazor (leveraging WASM) and the .NET Jupyter notebooks, it seems like they'd be positioned to make .NET/C# accessible in the mobile and web platforms too.

Re: Will VBA Die? (2019)

#150
post #104
post #27

I'm working on an excell addin right now. It doesn't use VBA (it uses microsoft interop libs for .NET) And I have zero interest in using VBA, but I will admit, it would have been much easier to do this project in VBA instead of C#. Debugging would have been easier. I could debug inside the VBA code-behind instead of Attaching to the excel process in Visual Studio. Deployment would have been easier. I could make an .x…

I'm curious, what's the upside of not using VBA? Aside from being cool, obviously :)

VBA is very annoying, and I wouldn't love it if I hadn't been forced to spend so much time in it creating custom functions before attempting larger scale applications.

Once you get used to classes/interfaces, however, the feeling is comparable to realizing the guitar you learned how to play on was terrible and had absurdly high action, and now that you're holding a mediocre to moderately good guitar, you can play a lot better than you thought.

I also think you have to accumulate a personal library of utility functions to make it tolerable (or sometimes even fun.) I've never noticed a real community with standards and norms around VBA, so you're on your own a lot.

Post reply on HN