我已经使用Access大约一年了,而且最近才开始学习VBA。我读过的书和我在网上看到的帮助似乎都不符合我的需要;或者如果他们这样做,那么我必须过多地注意新手。
我的项目是个人财务数据库,我正在研究预测现金流量的方法。我有
一个名为'tbl_InitialPoint'的定期交易表 (包含列描述,金额和频率(以天为单位)),
查找特定描述的最后日期的查询 'tbl_Register',
追加查询以将重复交易从'tbl_InitialPoint'插入'tbl_Register'
INSERT INTO tbl_Register(PostDate,Description,Amount)SELECT qry_MaxDate.LastDate + tbl_InitialPoint.Frequency AS DateSeries,tbl_InitialPoint.Description,tbl_InitialPoint.Amount FROM tbl_InitialPoint INNER JOIN qry_MaxDate ON tbl_InitialPoint.Description = qry_MaxDate.Description WHERE qry_MaxDate.LastDate + tbl_InitialPoint.Frequency< = [Forms]![HomePage]![DateHorizon];
我不知道的是运行/循环此查询的特定vba x次,直到查询为空或为空。
有什么想法吗?
答案 0 :(得分:0)
我想这里你使用的是本地Access表和相应的DAO对象。
您必须使用queryDef
对象及其execute
方法。
执行querydef后,您可以测试recordsAffected
实例的queryDef
属性。
如果此值等于零,则表示您的查询中未插入任何记录。
编辑:根据您的评论,您可以看到一些queryDef
相关代码here,您可以在其中创建新的querydef并列出对象的属性,包括{{1属性。