我在MS Access,tblMyTable.SomeID中的表上有一个字段,我想在tblUserPref.DefaultSomeID中将默认值设置为用户首选项.我似乎无法设置默认值以在tblMyTable的表定义中使用查询.我有一个表格,其中记录输入到tblMyTable.我试图在表单上设置字段的默认值,但似乎也不接受查询.所以,作为最后的手段,我试图用VBA来做.我可以在VBA中查询我想要的值,但我无法确定将代码附加到哪个事件.
我希望在用户开始输入新的空白记录之前,只要在表单中打开新的空白记录就运行代码.我不想在打开或编辑现有记录时运行代码.但是,如果代码同时针对新的空白记录和现有记录运行,我可以编写代码.到目前为止,我在场上和表单上尝试的所有事件都没有在我想要的时候运行.任何人都可以建议我应该使用哪个事件,以及哪个对象?
我不确定我是否理解了这个问题,但我认为你要求根据一些运行时信息(例如用户名)在不同的表中绘制一个值.在这种情况下,您可以使用域查找功能,DLookup(),并且您将传递要返回的字段的名称,您正在查找的表或查询的名称以及将结果限制为一行(我认为这取决于您可以在运行时收集的值).然后可以将DLookup()公式永久设置为表单控件上的默认值,并且在创建实际记录之前不会导致表单变脏.
当然,我可能完全误解了你要做的事情,所以这可能行不通,但你似乎想要在记录集中查找一些内容并将结果用作新记录的值,而DLookup()会允许你在没有任何编码的情况下做到这一点(并且有利于不过早地弄脏记录).
| 归档时间: |
|
| 查看次数: |
22986 次 |
| 最近记录: |