2016-04-22 92 views
0

我试图在Access 2010中创建数据库,并且遇到了一些问题。我目前有两张桌子,EarlyStageListResults & ESDailyTotals。每个表格都有一个名为Records的字段,其中ESDailyTotalsEarlyStageListResults中多个条目的摘要。我需要做的是将ESDailyTotals中的Records字段作为EarlyStageListResults中多个Records字段的总和。例如,假设下面的记录EarlyStageListResults根据Access DB中另一个表中的多条记录计算字段值

Date   Records 
4/22/16  2000 
4/22/16  3000 
4/22/16  1500 
4/21/16  1200 
4/21/16  2700 

ESDailyTotals记录应该是:

Date   Records 
4/22/16  6500 
4/21/16  3900 

我知道这可以在以后通过VBA和形式的事件来计算,但最佳我想希望能够在EarlyStageListResultsRecords字段中的任何一个发生更改时立即更新。看起来好像有一种方法可以使用访问宏编辑器(不知道名称,但是可以通过一系列组合框而不是通过VBA创建宏的工具),但我从来没有得到过对使用该工具的理解,所以一直依赖Forms和VBA。基本上,如果在更新字段时触发事件,并且可以像使用Access窗体一样将VBA代码输入到该事件处理程序中,那么我可以使用DLookup或SQL语句来执行此操作,但我不想这样做,不知道如何获取该事件处理程序。

这一切都需要在Access本身内完成,我不能使用外部程序来更新Access数据库文件中的记录。这是为了工作,并且(至少正式的)任何定制程序都是一个很大的禁忌。 :)

在此先感谢大家!

回答

1

你让这种方式太复杂了。你只需要一个表,被定义为

select Date, sum(Records) as Records from EarlyStageListResults 
group by Date 

名称查询ESDailyTotals数据库视图(称为在Access查询,我认为)。

+0

这将不会更新该字段,但对吗?我需要它们的原因总计是需要使用每天的总数进行计算。我以前用不同的形式工作,我想要做的就是简化它。之前的版本将这两个表格组合为一个表格,并且它以这种方式工作,但是然后我需要每个列表大约10个字段,并且如果列表名称更改,那么我必须进入并更改字段,这意味着之前数据访问困难得多。我正在努力使其更适合未来的变化。 –

+0

'这不会更新该字段?'我不知道这意味着什么,或者你指的是什么领域。这是一个查询,它将在每次访问“ESDailyTotals”时即时计算总计。 –

+0

我需要将计算结果存储在“ESDailyTotals”报告字段中,以便在稍后的计算中对其进行访问。有一个名为'PercentTotal'的字段,用于存储特定列表每天包含的所有帐户的百分比。如果某一天总共有6000个帐户,而列表A包含2000个这样的帐户,那么列表A的“PercentTotal”字段将为33%。 (续) –

相关问题