We've actually got an article Q'd up for Aug 4th on this.
the author used the "Edit" query button after setting up a regular query, then entering the stord procedure name and that didn't work. next a Macro was used as well as Microsoft Query.
Macro here:
Sub RefreshSheet()
'
' RefreshSheet Macro
' Macro recorded 05/06/2008 by David Poole
'
Set qt = Sheets("sheet1").QueryTables(1)
qt.Sql = "exec uspGetEmployeeManagers ?"
Set param1 = qt.Parameters("Enter the employee ID")
' The equivalent of the "Get the value from the following cell" portion of the parameters dialogue.
param1.SetParam xlRange, Range("sheet1!a1")
' The equivalent of the check box "Refresh automatically when cell value changes".
param1.RefreshOnChange = True
qt.Refresh
' If you instantiate objects destroy them afterwards.
Set param1 = Nothing
Set qt = Nothing
End Sub