使用DAO记录集访问2007以将记录添加到表的END

时间:2011-02-10 01:16:10

标签: ms-access access-vba

我在Word中有一个报表模板,用于从Access 2007数据库中提取表。这些表应该完全按照它们应该出现在报表中的结构,因为我们希望在更新模板中的字段后对格式进行最少量的后处理。

在一个步骤中,我使用一些VBA和DAO.RecordSet将TOTAL行添加到表的底部。 “添加总行”下的最后一位是添加行的位置。

我希望此行成为表格中的最后一行,因此当我们更新Word报表中的字段时,我们不必移动它。大约90%的时间它一直在工作:)但偶尔它会将Total行放在顶部。我不知道如何强迫它到桌子的底部。任何提示或解决方法?

我发现SQL语句更糟糕,它几乎总是将总行添加到顶部。

谢谢!

'Add the total row.
rs1.MoveLast
rs1.AddNew
rs1.Fields(fname) = "Total"
rs1.Fields("Frequency") = TotalSum
rs1.Fields("Percent") = "100.0%"
rs1.Update

rs1.Close

1 个答案:

答案 0 :(得分:4)

在关系数据库中,没有第一个或最后一个,只有您对要对其进行排序的字段强加的订单。这通常是ID或日期。添加合适的字段,然后在提取数据时按该字段排序。添加记录时,请确保通过更新排序字段使其符合您想要的顺序。