20 million cells? That seems ridiculous. Why aren't they using a database for something that huge?
I agree that a database-backed application is the right way to go for that much data. However, Finance used Excel because they could. We all like to talk about how bad an idea it is to do that, but Excel brought financial computations on large data sets to people who can't write any code. It has enabled thousands upon thousands of businesses to do things they couldn't do before without paying a programmer to develop a solution they cannot maintain. The fact that other spreadsheets regularly crater when handed data that Excel has no trouble with is exactly why we have so much Excel.
I like to use Drupal to rapidly create database applications which can handle a lot of data without writing code. But I wouldn't expect someone in accounting to be able to do that at all, and that just shifts the problem domain. Instead of getting stuck with Excel, now I'm getting stuck with Drupal. All of the logic just winds up in a different system that you can't trivially transfer it out of, so you have the same exact maintainability problem, except more people know how to work with Excel.