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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/33.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输入_Vba_Ms Access - Fatal编程技术网

组合框中的VBA输入

组合框中的VBA输入,vba,ms-access,Vba,Ms Access,这是我的第一个数据库开发项目,我有点迷路了 我有一个带有组合框的表单,它连接到一个唯一的批号/炉号中。当我在组合框中输入批号时,它会正确地从我的记录中提取批号 现在如何在VBA中操作此记录?我需要能够引用记录的所有字段以及上一条记录的所有字段来进行计算。我会编程,但我根本不知道语法 提前谢谢你 我不太清楚你所说的“以前的记录”是什么意思。要基于选定的批号访问所有记录,可以执行以下操作: Dim db as Database Dim rec as Recordset Set db = Curre

这是我的第一个数据库开发项目,我有点迷路了

我有一个带有组合框的表单,它连接到一个唯一的批号/炉号中。当我在组合框中输入批号时,它会正确地从我的记录中提取批号

现在如何在VBA中操作此记录?我需要能够引用记录的所有字段以及上一条记录的所有字段来进行计算。我会编程,但我根本不知道语法


提前谢谢你

我不太清楚你所说的“以前的记录”是什么意思。要基于选定的批号访问所有记录,可以执行以下操作:

Dim db as Database
Dim rec as Recordset

Set db = CurrentDB
Set rec = db.OpenRecordset ("Select * from MyTable where LotNumber = '" & Me.ComboBox.Value & "'")
rec现在保存一个包含所有记录的数据集,其中LotNumber是组合中选择的任何记录。根据您希望选择“上一条记录”的方式,您始终可以设置另一条记录集,如:

Set rec2 = db.OpenRecordset ("Select * from MyTable where Whatever = '" & SomeValue & "'")
如果以LotNumber减1为基础,它将类似于:

Set rec2 = db.OpenRecordset ("Select * from MyTable where LotNumber = '" & (Me.ComboBox.Value) - 1 & "'")
然后你引用他们说:

MyVariable1 = rec("WhateverFieldName")
MyVariable2 = rec("SomeOtherFieldName")
MyVariable3 = rec2("WhateverFieldName")
MyVariable4 = rec2("SomeOtherFieldName")

需要注意的是,如果LotNumber是整数数据类型,则需要删除WHERE子句中的单引号。

根据前面的记录,它可能是LotNumber-1。这似乎正是我需要的!谢谢,我的VBA结果将输出到我的表单上,并将打印在报告上。。。从VBA中的变量到Access窗体中的表的最佳方式是什么?