Question: Here's the problem: 

I have to modify an existing Excel spreadsheet using .NET. The spreadsheet is hugely complex, and I just have to add data in some predefined areas.

I'm investigating my options, and Excel Automation/InterOp is out of the question, as I'm implementing an ASP.NET website, and Excel probably isn't installed on the server. From what I find online, InterOp is also a very expensive solution performancewise.

Creating a CSV file is also ruled out because of the complex nature of the original spreadsheet.

Currently I'm leaning towards an ADO.NET OleDb solution, but I find that mentioned very rarely (Google and Stackoverflow.com) so I'm kinda worried: What's the catch with OldDb for Excel? 
The only drawback I can find on MSDN so far, is that I can't create cells with formulas, but that's really not an issue in my case.

I've also considered SSIS, but that's only based on my assumption that you can use existing Excel files when you generate spreadsheets. I don't know if that possible or not.

Then there's OpenXml. It seems overly complicated compared to OldDb, plus it's still undetermined which of the older Excel versions I have to support.

Am I missing something? Are there more alternatives?

Answer: 
Check out [MyXls](http://myxls.in2bits.org) a .NET solution for reading and writing binary XLS files.
Have a look at `Excel Web Access`, which is part of Excel Services in MOSS, a server-side version of Excel that lets you calculate and display your Excel information through a Web browser. The [MOSS overview page](http://msdn.microsoft.com/en-us/magazine/cc162511.aspx) describes the sharepoint framework that can provide Excel functionality on the server. You can use the [VSTO API](http://msdn.microsoft.com/en-us/office/aa905533.aspx) to programmatically access spreadsheets.