When I need to serve an Excel file from a Web Application I usually serve them through HTML. But when you have to serve a 220MB excel, you may think again! On my desktop, it took ages and lots of memory to open.
The obvious alternative is Spreadsheet XML. It is fast, light, powerful and you still don't need an installed runtime at your server. Here is a great reference link from MSDN.
PS: watch out for ss:MergeAcross, his count excludes the current cell. So, if a cell is not merged, the MergeDown="0" and MergeAcross="0".
MergeAcross is the HTML colspan equivalent. Couldn't get MergeDown to work in my scenario.