将For j = 0 To rs.RecordCount - 1
改成 For j = 0 To datagrid1.rows - 1
试试

解决方案 »

  1.   

    应该如下:
    Dim j As Integer
        rs.movelast   '即先把记录集移动到最后一行,这样recordcount的值才是整个记录集的值
        For j = 0 To rs.RecordCount - 1
           DataGrid1.Row = j
           Debug.Print DataGrid1.Row
           If DataGrid1.Columns(1).Text <> "" Then
              DataGrid1.Columns(1).Text = ""
           End If
       Next j
      

  2.   

    以上两位都说错了:
       1,rs的值是正确的。debug.print的值正是rs的值。
       2,datagrid控件没有rows的属性。不信你们自己试试。
      

  3.   

    您也没有说到点子上。
    datagrid控件是分页显示的,row属性指的是当前页的行号。
    如果已经绑定:Dim j As Integer
       For j = 1 To rs.RecordCount
           rs.recordset.absoluteposition = j
           Debug.Print DataGrid1.Row
           If DataGrid1.Columns(1).Text <> "" Then
              DataGrid1.Columns(1).Text = ""
           End If
       Next j