Hacker News new | ask | show | jobs
by jayfehr 4135 days ago
My first job out of college was converting all the Excel spreadsheets that ran the business to web apps so I certainly know how they are used, and more importantly, how they are abused.

If Excel had a real scripting language as it's Macro language the problem wouldn't be nearly so bad. All that business code could just be copy/pasted, have some unit tests implemented then refactored so that the accountants code is now updated by the developer. As it is now the code has to completely rewritten in a new language.

As for the language choice, VB.Net or C# would be fine. I'm not saying it has to be Python. My complaint is that the code is non-transferrable. The apps cannot grow past Excel, and the email the most recent version to the next guy game gets you into versioning hell rather quickly.

3 comments

Office 2013 has some nascent JavaScript scripting; maybe someday it will overtake VBA.
was vba too hard for you to learn?
But you're a developer. A sales manager (for example) couldn't care less about your objections.

He wants his pivot tables, KPIs and Solver and some macros. He wants point-and-click ETL. If it's a department/cross-department model, do it in SQL Server, or whatever else you use. You can use your IT kung-fu there. This is about what libre office lacks. Excel has power and flexibility and remains easy to use for non-programmers.

I agree with those points. My comments are in regards to Macros. Why is VBA better for a sales manager? Why not use VB.Net, Python or C#? There is nothing inherently better about VBA.

My issues with Excel come from the perspective of modifying these ad-hoc apps (many business run off these for a long time as they grow). Yes, there are other great features, but for me, for growth, Calc is taking a better approach.

what were you not able to accomplish with vba? you can use c# with excel as well. http://exceldna.codeplex.com