Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA-带单元格引用的SQL查询_Vba_Excel - Fatal编程技术网

VBA-带单元格引用的SQL查询

VBA-带单元格引用的SQL查询,vba,excel,Vba,Excel,我一直在开发一个新的工具,我需要它来运行基于单元格相等的查询 比如说, 我在excel中有3个单元格进行了数据验证。 C4:部门 C5:组 C6:类别 基本上,如果选择了(All),则运行第一个查询,否则运行第二个查询。 我需要Group根据单元格的内容运行查询,如下所示: If Sheets("Rollup").Range("C5").Value = "(All)" Then Sheets("Codes").Range("B3:XFD1048576").Clear cn.Ope

我一直在开发一个新的工具,我需要它来运行基于单元格相等的查询

比如说,

我在excel中有3个单元格进行了数据验证。 C4:部门 C5:组 C6:类别

基本上,如果选择了(All),则运行第一个查询,否则运行第二个查询。 我需要Group根据单元格的内容运行查询,如下所示:

If Sheets("Rollup").Range("C5").Value = "(All)" Then
Sheets("Codes").Range("B3:XFD1048576").Clear
        cn.Open SQLServerConnString
        strQuery = "Select DEPT_CATG_GRP_DESC from dbo.Rollup GROUP BY DEPT_CATG_GRP_DESC ORDER BY DEPT_CATG_GRP_DESC"
        Set rs = cn.Execute(strQuery)
        Sheets("Codes").Range("B3").CopyFromRecordset rs
        rs.Close
        cn.Close
Else Sheets("Codes").Range("B3:XFD1048576").Clear
        cn.Open SQLServerConnString
        strQuery = "Select DEPT_CATG_GRP_DESC WHERE DEPT_CATG_GRP_DESC = C5.Value from dbo.Rollup GROUP BY DEPT_CATG_GRP_DESC ORDER BY DEPT_CATG_GRP_DESC"
        Set rs = cn.Execute(strQuery)
        Sheets("Codes").Range("B3").CopyFromRecordset rs
        rs.Close
        cn.Close
End If

您的SQL字符串只是一个字符串。必须在值中串联以生成所需的字符串

 strQuery = "Select DEPT_CATG_GRP_DESC WHERE DEPT_CATG_GRP_DESC = " & Sheets("Rollup").Range("C5").Value & " from dbo.Rollup GROUP BY DEPT_CATG_GRP_DESC ORDER BY DEPT_CATG_GRP_DESC

您的SQL字符串只是一个字符串。必须在值中串联以生成所需的字符串

 strQuery = "Select DEPT_CATG_GRP_DESC WHERE DEPT_CATG_GRP_DESC = " & Sheets("Rollup").Range("C5").Value & " from dbo.Rollup GROUP BY DEPT_CATG_GRP_DESC ORDER BY DEPT_CATG_GRP_DESC

我在电源查询中嵌入了SQL代码。我在Excel工作表中有一个命名单元格。我已成功引用该单元格,并在我的电源查询中将其用作过滤器:

YAWafer = Excel.CurrentWorkbook(){[Name="YAWafer"]}[Content]{0}[Column1]  
我不知道如何将此参数“馈送”到嵌入的SQL代码中,即嵌入到成功使用此参数作为过滤器的同一个Power查询中的代码


根据我在这些帖子中看到的想法,我尝试了许多不同的方法,但都没有成功。我的主要动机是将该参数放入嵌入式SQL代码中,并将其用作前置过滤器

我在Power查询中嵌入了SQL代码。我在Excel工作表中有一个命名单元格。我已成功引用该单元格,并在我的电源查询中将其用作过滤器:

YAWafer = Excel.CurrentWorkbook(){[Name="YAWafer"]}[Content]{0}[Column1]  
我不知道如何将此参数“馈送”到嵌入的SQL代码中,即嵌入到成功使用此参数作为过滤器的同一个Power查询中的代码


根据我在这些帖子中看到的想法,我尝试了许多不同的方法,但都没有成功。我的主要动机是将该参数放入嵌入式SQL代码中,并将其用作前置过滤器

我已经把你的整个问题读了5遍了,但我仍然不明白你的问题是什么。我已经把你的整个问题读了5遍了,我仍然不明白你的问题是什么。谢谢!太完美了!谢谢太完美了!