forms - 新数据库的 DLOOKUP 语法错误问题
问题描述
我有一个包含 4 个表的数据库,但主要是一个转移表/表单 (DiversionT/F) 和一个回报表/表单 (PaybackT/F)。基本上,当我的程序将零件借给我组织中的其他程序时,会在 DiversionT 中创建一个转移。当程序想要回报时,他们会在 PaybackT 中创建一个回报条目。
我有一个令我感到困惑的问题:在 PaybackF 上,用户输入了他们想要偿还的 NSN(长部分代码)。最终,我希望某些表单能够根据输入的 NSN 自动填充零件信息。信息存储在 DiversionT 中。我在 PaybackF 上创建了几个文本框来显示信息。我尝试基于 NSN 自动填充的第一个文本框是一个名为 PartName 的文本框。它应该为该 NSN 搜索 DiversionT 并在 PaybackF 上填写适当的 PartName。在我输入的框的控制源中:
=DLookUp("[PartName]","[DiversionT]", "[PartName]=" & Forms![PaybackF]!NSN)
我收到以下错误:
您输入的表达式包含无效语法。
老实说,我还不太了解 VBA(直到现在我都在使用 C、C++、Java 和 Python),但在 Microsoft 网站上查找了该函数。
如果我不这样做,也请让我知道吗?
解决方案
您不能输入 VBA 来形成源代码管理等属性。VBA 仅用于 VBE 中的过程代码。话虽如此,有一个 DLOOKUP 函数可用于表单字段,语法类似。这是你困惑的一个原因。
数字的示例语法:
=DLookUp("[PartName]","DiversionT", "[PartName]=" & [NSN])
字符串的示例语法:
=DLookUp("[PartName]","DiversionT", "[PartName]='" & [NSN] & "'")
注意:我不知道您在哪个表格上,或者 NSN 是来自父表格还是子表格。基本上,NSN 需要从存在该文本字段的相同表单中读取。
推荐阅读
- c - 如何从使用 NtCreateUserProcess 创建的进程中隐藏窗口?
- python - 处理从 shell 脚本到 python 内部参数的文件
- spring - 如何使 Spring API 成为可通过 Internet 访问的公共 Web 服务?
- google-sheets - =根据单元格引用从另一个工作表中提取数据的查询功能
- android - 使用 Vulkan 从 Android Camera2 硬件缓冲区进行采样 - 图像格式问题
- javascript - 选择下拉选项后保持覆盖
- c# - 无法在控制台应用程序 .NET Core 中使用 IOptions
- javascript - 以与另一个数组相同的顺序对数组进行排序,如果不匹配,则添加到最后一个
- python - 无法读取 instance.png,因为文件丢失、权限不正确、格式不受支持或无效
- python - 参考 Python 字典主题:为相同的输入获取不同的输出