It is because you are trying to connect through a SQL Server connection, not an Access/Excel DAO connection. While SMS will allow this, there is something in the OLEDB middle-ware that doesn't understand this type of connection and so your query is causing an error.
Here's what I would do (if Crystal will let you...):
1. Add the data from SQL Server under one connection and the data from Excel under another.
2. Left Outer Join from the SQL Server data to the Excel data.
3. In your selection criteria, do something like the following formula:
IsNull({ExcelTable.InvoiceNumber})
This should get you all of the data in the table that's not in the Excel file. If this doesn't work, you'll have to look at uploading the Excel to a table in the database and working from there.
-Dell