我有一张excel工作簿,有2张。 在每个工作表中,我都有一个Query,它通过SQLserver从外部服务器中提取数据。
在Sheet1,Cell A1中的,我的值为1000
从Cell B2开始,我需要Query才能让所有得分超过1000的学生
我在Excel中用Excel编写代码>连接属性>定义>命令文本
我的代码如下:
SELECT Results.ID, Results.Score
FROM Results
Where Results.Score > ?
当我按OK时,系统会提示我选择要用作参数的单元格而不是'?'字符
然后我得到所有学生ID&分数超过1000的学生得分
当我在Sheet1中更改Cell A1时
现在在Sheet2,Cell A1中,我有Value 5 从Cell B2开始我需要查询才能让所有5年级学生
我的代码如下:
SELECT Students.ID, Students.Grade
FROM Students
WHERE Students.Grade = ?
当我按下确定时,查询运行时没有要求我指定单元格以保存'?'参数,它使用第一个查询中的参数
如何告诉excel我需要为每个Query提供不同的参数
提前致谢
答案 0 :(得分:0)
好吧,我搜索了很多与我有同样问题的人,我无法找到所以我认为这一定是我要做的事情导致问题
为了便于创建第二个查询,我曾经复制了第一张工作表并更改了第二张工作表中第二个查询的SQL命令,我发现这导致复制使用的参数
因此,解决方案只是为每个新工作表
创建新查询