You might also want to do a search on BOL for sp_addLinkedServer.
You can use this to run a SQL query against a named range or spreadsheet. (order by, sum(),select etc....)
All the code you need to connect directly to an excel workbook is shown in the examples.
For what it is worth.
Rob