作者: 小小白菜 时间: 2016-7-28 18:36
用rs.movenext与前一个相减就可以实现,只是第一个不能与标题相减,所以要加on error来跳过错误
On Error Resume Next
Dim sql As String
Dim rs As ADODB.Recordset, i As Integer, t1 As Date
sql = "select * from 间隔天数表"
Set rs = New ADODB.Recordset
rs.Open sql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
For i = 1 To rs.RecordCount
t1 = rs("时间")
rs.MoveNext
rs("天数") = Abs(Nz(DateDiff("d", rs("时间"), t1), 0))
Next
rs.Close
Set rs = Nothing
DoCmd.OpenTable "间隔天数表", acViewNormal作者: sxgaobo 时间: 2016-7-28 18:46
谢了!!!作者: scwcha 时间: 2016-7-29 11:31
不怕你不会,就怕你学不会。作者: roych 时间: 2016-7-29 15:27
如果不考虑双休之类,直接ADO循环减去就好了。
如果需要考虑到休息日,补休,调班等等,请参考以下链接: http://www.office-cn.net/thread-120879-1-1.html