【发布时间】:2018-01-09 11:16:08
【问题描述】:
我有一个包含多个货件的数据表 - 表名“2 - Rates 0 Pre-Setup”。 数据示例。
Country POL Volume
India Mumbai 90
India Mumbai 9
India Nhava Sheva 3
India Nhava Sheva 474
India Tuticorin 19
India Tuticorin 1352
Indonesia Jakarta 1020
Indonesia Jakarta 67
我需要根据体积字段将这些数据聚合到一个新表中,以便为用户生成一个模板,如下所示。
Country POL Volume
India Mumbai 99
India Nhava Sheva 477
India Tuticorin 1371
Indonesia Jakarta 1087
下面的代码可以很好地复制原始表并生成新的“测试 1”表,但我很难根据 Volume 字段聚合数据。 假定 sum(lane!Volume) 但它出错了。
Private Sub NewOceanFreight_Click()
Dim db As DAO.Database
Dim lane As DAO.Recordset
Set db = CurrentDb
Set lane = db.OpenRecordset("2 - Rates 0 Pre-Setup")
Set Test1 = db.OpenRecordset("Test 1")
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE * FROM [Test 1]"
Do Until lane.EOF
lane1 = lane![Country]
lane2 = lane!POL
lane3 = lane!Volume
Test1.AddNew
Test1![Origin Country] = lane1
Test1![Origin Port] = lane2
Test1![CBM] = lane3
Test1.Update
lane.MoveNext
Loop
lane.Close
DoCmd.Requery
End Sub
抱歉,如果这是重复但对 Access 中的 VBA 是新手,并且无法从其他帖子中找到对我有用的答案,因此欢迎提供任何建议。谢谢。
【问题讨论】:
标签: vba loops ms-access aggregate-functions