Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.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
Forms 对表单中的每条记录运行VBA_Forms_Ms Access_Vba - Fatal编程技术网

Forms 对表单中的每条记录运行VBA

Forms 对表单中的每条记录运行VBA,forms,ms-access,vba,Forms,Ms Access,Vba,给定一个连续显示表中每条记录的特定文本框的表单,我希望在每条记录的所有文本框(自动,而不是通过VBA)填充当前记录的数据后,执行VBA sub。因此,理想的执行顺序是: fetch next record from table distribute values into text boxes and draw execute VBA fetch next record from table 我怎样才能做到这一点 注意:表格是“连续的”(我不知道用access术语怎么说)。E一次显示所有记录,

给定一个连续显示表中每条记录的特定文本框的表单,我希望在每条记录的所有文本框(自动,而不是通过VBA)填充当前记录的数据后,执行VBA sub。因此,理想的执行顺序是:

fetch next record from table
distribute values into text boxes and draw
execute VBA
fetch next record from table
我怎样才能做到这一点

注意:表格是“连续的”(我不知道用access术语怎么说)。E一次显示所有记录,而不是一次显示一条带有向前/向后移动按钮的记录


注2:我要做的是:我有一个表
F
,其中包含另一个表
T
的字段名。我的表单遍历
F
的行。对于
F
中列出的每个字段名,我想打印出名称,并构建一个查询,该查询绘制一个直方图,显示该列
T
中的数据。

您不能。在Access中的连续表单中,控件只有一个实例。对控件的任何操作都会影响该控件的所有记录

在连续表单上,每个记录没有单独的事件


您可以遍历记录,但只能在填充表单之前或之后进行。

不太清楚“将值分配到文本框”是什么意思。手动填充值?在任何情况下,您都可以将计算列添加到基本查询,该查询使用文本框字段中的参数调用VBA函数,在更改文本框中的数据后,每个字段都会调用该列。这是糟糕的数据库设计。字段名不用于存储数据。如果您有一个表,其中包含另一个表中字段的字段名,则这清楚地表明您的数据未规范化,需要调整您的设计。如果不调整数据库设计,就无法实现预期目标。类似的数据应该存储在同一个字段中,另一个字段用来区分数据类型,而不是单独的字段。@ErikvonAsmuth:一些可配置的数据库有表和字段表,它是复杂信息环境中的一个强大的数据管理工具。也不适合胆小的人@ErikvonAsmuth数据库设计确实是有争议的,但这是我的影响。然而,我怀疑一个正确规范化的数据库是否能解决这个问题:给定一个表,它有一个额外的列
属性
,您仍然需要迭代
属性
的所有不同值,并相应地填充直方图。@Bubaya那么,您不必迭代它。您可以只使用包含所有记录的所有数据的记录源图表,并使用“链接主字段”和“链接子字段”属性以获得具有正确记录的正确数据。这对我来说是个坏消息。请将我的编辑用于我正在尝试的操作。在屏幕上一次查看一条记录是可以的;然而,当我想要打印时,我总是以连续视图结束,在两个记录之间我的直方图没有更新。