yes, you can read xls files into sql server using openrowset(), it requires specific permissions and is typically used for loading data into a table.
If it were possible to read data directly from xls files, the performance would be categorically diabolical.
Surely it would be more efficient to load all your excel files into tables periodically and then query the data from within SQL. What's the point of having a SQL server otherwise?