访问 VBA - 使用 VBA 的 SQL 语句使用文本框组合框值在表单上填充列表框 OR

Posted

技术标签:

【中文标题】访问 VBA - 使用 VBA 的 SQL 语句使用文本框组合框值在表单上填充列表框 OR【英文标题】:Access VBA - SQL Statement using VBA to fill List Box on form using Text Box Combo Boxes Values Where OR 【发布时间】:2020-06-13 21:15:29 【问题描述】:

需要一些帮助、示例和建议

我有 2 张桌子 | tbl主 |记录 和一份表格 | frmFAMILY - 数据源:tblMAIN

我正在尝试使用 VBA 在访问中创建一个简单的 SQL 语句,它将 匹配来自 tblRECORDS 的匹配 WHERE 文本框或表单 frmMAIN 上的 2 个组合框值的记录,然后用数据填充列表框 listRECORDS 并忽略任何值为 0 的值。

所有的值都是数字,但如果我决定搜索文本等,我想知道如何格式化。

我还想加入一些 If Then Else。有谁知道使用 VBA 示例的 SQL 语句的好资源?

这是我所拥有的,但它不起作用。

Private Sub Form_Current()
Dim strRecords As String
 strRecords = "Select * FROM tblRECORDS WHERE tblRECORDS.RecordID = [Forms]![frmFAMILY].[txtID] OR tblRECORDS.RecordID2 = [Forms]![frmFAMILY].[cboSpouse1]"
 Me.listRECORDS.RowSource = strRecords
 Me.listRECORDS.Requery
End Sub

【问题讨论】:

网络上到处都是例子。对于您发布的内容,删除 ALL 以及末尾的 2 个额外引号。 以docs.microsoft.com/en-us/office/vba/access/concepts/…开头 嗨,删除了 ALL 和 2 个额外的引号,但仍然无法正常工作???? 经过测试的代码对我有用。 【参考方案1】:

我已通过添加 OR 而不是 AND 来解决此问题。

【讨论】:

以上是关于访问 VBA - 使用 VBA 的 SQL 语句使用文本框组合框值在表单上填充列表框 OR的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VBA 访问的子窗体中显示 Select SQL 语句的结果?

excel vba链接sql怎样使运行速度变快

使用vba程序,实现excel数据库模板生成sql数据库结构

使用vba程序,实现excel数据库模板生成sql数据库结构

SQL语句VBA代码Access 2007结束后发现的字符

Access VBA 中的运行时 3464。尝试使用 SQL 选择语句打开记录集