Take the 2-minute tour ×

I have a query in an excel table. I followed this to do it.

But how can I add a parameter from a cell into my query?

I am looking for a way to do this

select *
from dbo.Customers
where CustomerID = Cell.A2

The Cell.A2 does not work, but how can I add in something like it, so that the contents of a cell are used in my query.

share|improve this question
add comment

2 Answers

up vote 8 down vote accepted


Click on Data -> From External Sources -> From Microsoft Query. CHoose Data source comes up. Select SQL Server, enter the Auth details, and select the table

enter image description here

Click on Next, don't select any filtering criteria, choose sort by criteria, click on next. Now, click on View/Edit in MS Query instead of selecting Return to Excel

enter image description here


enter image description here


enter image description here


enter image description here

You can also use the SQL query editor and type in the query with the joins and put a ? against the field where the parameter has to be fetched.

enter image description here

share|improve this answer
Alas, parameters is disabled. –  Vaccano Oct 11 '10 at 16:34
@Vaccano: Revamped my answer, please have a look –  Sathya Oct 11 '10 at 17:37
Thanks for the effort on this Sathya. Alas I realized that because my query has some joins in it MS Query cannot display it graphically. That makes it so you cannot have parameters. I am going to make it as a VBA function. I am giving you the nod though because your answer was so complete. –  Vaccano Oct 11 '10 at 18:09
@Vaccano: You can write the query using the SQL editor, and put a ? against the field to which the parameter has to be selected i.imgur.com/NgXxc.png –  Sathya Oct 11 '10 at 18:30
I have found that once the query is in Excel, you can go into the query parameters screen and edit it there without going into MS Query again. Just drop a ? where the criteria goes. Then go back into the connection properties screen and assign that parameter to a cell in the spreadsheet. –  Tracy Probst Nov 1 '10 at 14:33
show 3 more comments

Put value as

where employeecode = '?'

This will enable your parameter button, but when you press ok it will prompt you.

share|improve this answer
add comment

Your Answer


