Hacker News new | ask | show | jobs
by thedevil 3799 days ago
It was very well made. It's easy to use and yet but also has great features and shortcuts for power users. There's lots of genius little features not available elsewhere, like grouping columns or formulas over columns or rows (e.g. sum(A:A)). I often abused it with 50mb spreadsheets (a bad practice fyi) and it could often take it. The version I used rarely crashed.

For most software I use, I see lots of things that need improvement. With Excel, I can only think of a few. (If anyone from Microsoft is reading this, please add matchifs, it's desperately needed).

1 comments

Let's start a list:

Opening a csv triggers a full recalc even if your calcs are on manual. That's absurd given that csv files by definition have no formulas

Come on Microsoft. 18 years without updating the scripting abilities. Can't we have a .net version of VBA?? And NO JAVASCRIPT.

The fx button still opens a tiny old non resizable windows with a broken search feature, which is impractical if you have hundreds of UDF.

High levels of nesting in the UI making it really slow to repeat certain actions (try drawing something). I still miss Excel 2003's customizable UI.

They could provide at least a function to pull end of day FX rates.

Integration with powerpoint pretty much non existant. A huge amount of users prepare decks based on a model in Excel. The process to link them is unstable / stone age.

We should be able to transform a sheet into an excel formula, so that a non programmer can apply a complex logic to lots of data without a script.

Xlsm files get corrupted regularly when excel is running low on memory.

Adopt apple's idea of a sheet being a canvas on which you can drag tables or charts instead of having this antique model of a single grid which becomes annoying as soon as you have two tables on the same tab.

I am sure I can pull more if popular demand!

They've had an HTML / JS Add-in model for a few years now: http://dev.office.com/getting-started/addins?product=excel

It's not the exact same as VBA macro extensibility, but you can do some pretty interesting stuff with it - build task panes, build embedded charts that leverage web content, etc.

Swapping VBA for javascript is not exactly an upgrade. But you can't do any in-session scripting or UDF so that's of very limited use.

And for automation I would rather use .net + ExcelDNA than javascript.

I can understand why they went the javascript route but that's clearly hearing developers, not users.

> That's absurd given that csv files by definition have no formulas

I have some scripts that generate CSV files with formulas and for the record they work fine in both Excel and LibreOffice Calc.

I wouldn't recommend most of these ideas to Microsoft.

For example, I've done work where I've needed a recalc based on an updated csv so your suggestion would have broken Excel for some of my use cases. There's plenty of changes to recalc rules I would have liked, but I'm not sure any of them were unambiguously good ideas.

Also, scripting in spreadsheets is bad practice (besides maybe formatting or simple data fetching and even those are questionable). It's not what spreadsheets are for.

If calculations are on automatic, a recalc is fair enough. If calculations on manual, Excel should not initiate an unsolicited full recalc.

Scripting is extremely useful in Excel. In fact the productivity gain of this single feature is just off the chart. You have to think about business users, who barely know how to code. They can automate in a couple of hours some of their tasks, that would otherwise require to discuss with the IT team prioritisation, specs, testings, etc, and get something at best after 6 months.

I appreciate that IT depts hate seeing users coding stuff themselves but there is much to be said about the productivity of IT in large corporations.

And from a user point of view, I don't see why it would be bad practice. The only problem with scripting is viruses. But otherwise every application should be scriptable. There is always something that you would save time with a loop instead of having to do dozens of clicks.