access中如何写循环语句

在access中有一个表1
序号 分序号
1 1
1 2
2 1
2 2
2 3
3 1
4 1
5 1
5 2
现在问题是“序号”是确定的,“分序号”的值是空的,能不能用access中空体中建一个按钮,用循环语句来实现“分序号”字段值的填入。谢谢!

Private Sub Command0_Click()
    '本代码需要引用ADO数据访问对象,于VBE编辑器 菜单 工具 引用
    '勾选Microsoft ActiveX Data Objects Library 2.5或其他版本并确定
    Dim rs As New ADODB.Recordset
    Dim strSql As String, xh As Long, fxh As Long
    strSql = "select 序号,分序号 from 表1 order by 序号"
    rs.Open strSql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    If Not rs.BOF And Not rs.EOF Then
        xh = rs!序号
        Do Until rs.EOF
            If rs!序号 = xh Then
                fxh = fxh + 1
            Else
                xh = rs!序号
                fxh = 1
            End If
            rs!分序号 = fxh
            rs.Update
            rs.MoveNext
        Loop
    End If
    rs.Close
    Set rs = Nothing
    MsgBox "分序号填写完毕"
End Sub

点击按钮,代码运行后,直接打开表1,新填入的分序号可能会倒序排列,但是没问题的。可以运行选的查询重新排序即可  “select * from 表1 order by 序号,分序号”。


如果表1的序号严格按大小顺序排列,则上述代码中的选择查询语句就不需要强制排序了

strSql = "select 序号,分序号 from 表1 order by 序号" 改为:

strSql = "select 序号,分序号 from 表1"

这样代码运行后,打开表1就不会出现分序号倒序的情况。

温馨提示:答案为网友推荐,仅供参考
相似回答