gpt4 book ai didi

forms - 使用 VBA 模块从 Access 中的表单中获取文本值

转载 作者:行者123 更新时间:2023-12-04 04:07:11 24 4
gpt4 key购买 nike

我目前想从表单中获取一个值,以便在我使用 VBA 在 Access 下的模块中进行的 SQL 查询中设置它。我试着用

value = Forms![NameOfForm]![NameOfTextbox] 

sqlquery = "...." & value & "....."

它会出错(2450),说它找不到指定的表格。如何获取此文本框的值,以便可以在我的模块中使用它?

谢谢

最佳答案

修改您的 VBA 代码以确保表单处于打开状态。

DoCmd.OpenForm "NameOfForm"

这应该可以防止错误 #2450。

之后,您不需要将 [NameOfTextbox] 的值存储到变量中,然后使用该变量来构建您的 SQL 语句。你可以直接使用它的值。
sqlquery = "SELECT * FROM YourTable " & _
"WHERE some_field = '" & Forms![NameOfForm]![NameOfTextbox] & "';"

或者在查询中嵌入对文本框本身的引用(而不是文本框的值)。
sqlquery = "SELECT * FROM YourTable " & _
"WHERE some_field = Forms![NameOfForm]![NameOfTextbox];"

我假设 some_field 是文本数据类型字段,因此在第一个查询示例中用单引号将文本框值括起来。请注意,第二个示例不需要引号,因为它通过名称而不是值来引用文本框。

但是,如果您继续使用原始方法(将文本框值存储到变量中),请不要将变量命名为“值”,因为值可能会与许多对象的属性混淆。

关于forms - 使用 VBA 模块从 Access 中的表单中获取文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9383468/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com