Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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 如何在VB中运行SQL select语句_Vba_Ms Access - Fatal编程技术网

Vba 如何在VB中运行SQL select语句

Vba 如何在VB中运行SQL select语句,vba,ms-access,Vba,Ms Access,我一直在四处寻找,但似乎找不到如何做到这一点 我试图在VB中执行一个SELECTSQL语句,该语句从表单中获取一个参数。例如,用户选择From和To日期,SQL应该采用他们选择的内容 我知道您不能对SELECT SQL使用DoCmd.Execute方法,因此我需要打开记录集-但是如何打开?这就是我迄今为止所尝试的 Dim recordSet As DAO.recordSet Dim SQL As String SQL = "SELECT * FROM tblWebMeetingData" Se

我一直在四处寻找,但似乎找不到如何做到这一点

我试图在VB中执行一个SELECTSQL语句,该语句从表单中获取一个参数。例如,用户选择From和To日期,SQL应该采用他们选择的内容

我知道您不能对SELECT SQL使用DoCmd.Execute方法,因此我需要打开记录集-但是如何打开?这就是我迄今为止所尝试的

Dim recordSet As DAO.recordSet
Dim SQL As String

SQL = "SELECT * FROM tblWebMeetingData"
Set recordSet = CurrentDb.OpenRecordset(SQL)

'More code in here

recordSet.Close

Set recordSet = Nothing
因为它执行时没有错误,所以我假设它实际上得到了结果——那么有没有办法看到它实际上返回了什么呢


首先谢谢:例如,将记录集重命名为rs是一个很好的建议,因为“recordset”是一个保留名称。这是不可理解的

此记录集包含SQL语句查询的记录。您可以通过
rs.fields(“fieldname”).value
访问这些数据。使用
rs移动到下一个记录集。movenext

为了合并表单的控制值,我使用在打开记录集之前构建完整SQL语句的方法。假设表单名为“myform”,控件名为“mycontrol”,您可以编写某种

SQL = "SELECT * FROM tblWebMeetingData WHERE myfield = " & forms!myform.mycontrol.value
请确保表单仅包含有效值,因为任何格式错误的值都将直接导致SQL执行错误


我希望这就是您想要的。

首先:将记录集重命名为rs是一个很好的建议,例如,因为“记录集”是一个保留名称。这是不可理解的

此记录集包含SQL语句查询的记录。您可以通过
rs.fields(“fieldname”).value
访问这些数据。使用
rs移动到下一个记录集。movenext

为了合并表单的控制值,我使用在打开记录集之前构建完整SQL语句的方法。假设表单名为“myform”,控件名为“mycontrol”,您可以编写某种

SQL = "SELECT * FROM tblWebMeetingData WHERE myfield = " & forms!myform.mycontrol.value
请确保表单仅包含有效值,因为任何格式错误的值都将直接导致SQL执行错误


我希望这就是您想要的。

这里是关于迭代trought记录集并使用其中的值的示例代码(我希望它有点帮助):


下面是关于迭代trought记录集并使用其中的值的示例代码(我希望它能有所帮助):


那个么,我该如何去看不同的记录呢?见Wawrzyniec Sz的答案。当然,使用这些数据的方式取决于您想对它们做什么。如果你能在这一点上更具体一些,我们可能会更好地帮助你:-)好的,因此我正在查看的从中获取数据的表有19个字段,我想要一个vb中的sql语句,它将根据用户在下拉框中选择的内容从该表中获取所有数据。其结果应写入excel文件-我可以很好地编写excel代码,但在尝试向其传递SQL时遇到了问题。用户选择什么类型的信息?此信息与哪个表列相关?知道了这一点,你可以添加一些
。。。其中fieldname='information'…
。那么我该如何查看不同的记录呢?请参阅Wawrzyniec Sz的答案。当然,使用这些数据的方式取决于您想对它们做什么。如果你能在这一点上更具体一些,我们可能会更好地帮助你:-)好的,因此我正在查看的从中获取数据的表有19个字段,我想要一个vb中的sql语句,它将根据用户在下拉框中选择的内容从该表中获取所有数据。其结果应写入excel文件-我可以很好地编写excel代码,但在尝试向其传递SQL时遇到了问题。用户选择什么类型的信息?此信息与哪个表列相关?知道了这一点,你可以添加一些
。。。其中fieldname='information'…