我知道可以使用访问来计算同一行中的项目。但 是否可以计算不同行中的项目?
例如,我想乘以" speedkmhr"与下一行的方向。
答案 0 :(得分:0)
我会使用VBA功能。在Access中按CTRL + G,然后单击菜单插入>模块。复制&将以下内容粘贴到该模块中:
Function fGetNextDirection(lngID As Long)
Dim rst AS DAO.Recordset
Set rst = CurrentDb.OpenRecordset("SELECT TOP 2 FROM TAXIDATA WHERE " & _
"PosID = lngID & " ORDER BY PosID")
rst.MoveLast
If rst.RecordCount = 2 Then
fGetNextDirection = rst!Direction
Else
fGetNextDirection = 0
End If
rst.Close
Set rst = Nothing
End Function
然后,在查询中添加新字段:
产品:NZ(SpeedKmHr)* fGetNextDirection(PosID)
如果这是最后一条记录,结果将为0。