If you want more control of Excel, you can make an instance to it by creating a wrapper to Excel (.NET does this automatically). You then have direct access to workbooks, worksheets, cells and more.

The backside of this is that you must bind the application to a minimum version of Excel (i.e. if you use functionality for Excel v/9, you can't use application on Excel v/8).

The advantage is that the application have full control over Excel and it's behavior - you can insert macroes, color cells, insert scripts and so on. You can also at any time detatch the application control by eliminating the object relation - just make shure you leave Excel visible at that time