本人最近从.net刚转到VB做一个数据导出的程序:
假设数据表有: 1,2,3,4,5,6 共6列,现需要根据前两列:1,2列前一条与本条的数据相同时则将本记录的第4-6列移到前一条记录的7-9列中.如何有效地处理该数据,请高手指点.
部分代码如下:
Do While srcRS.EOF = False
strRows = strRows & "<tr>"
szFieldName = srcRS.Fields("1").Value & srcRS.Fields("2").Value
    For i = 0 To srcRS.Fields.Count - 1
            strFields = "<td>" & TranslateField(srcRS.Fields.Item(i).Name, srcRS.Fields.Item(i).Value) & "</td>"
strRows = strRows + strFields
Next i
If szNextFieldName <> szFieldName Then
    szNextFieldName = szFieldName
    strRows = strRows & "</tr>"
End If
srcRS.MoveNext
Loop

解决方案 »

  1.   

    定义变量   LastField1   LastField2
    每次都将Field1/Field2 付给这两个变量
    从第二行开始比较上一行的数值,作判断。-----------------------------------------
      

  2.   

    还是不行,我要把Field1/Field2都相等的Field5/6放到Field7+n/8+n,后面的field是动态增加.
      

  3.   

    循环
    for i=1 to rs.recordcount
      f1=rs.fields(1)
      f2=rs.fields(2)
      rs.movenext
      if rs.fields(1)=f1 and rs.fields(2)=f2 then
        conn.excute"update ..."  '-你每行主键,更新一下
      end ifnext i我没测试,但是逻辑上可以。update上面自己写一下我有个疑问在处理这个问题上vb.net和vb有什么不同么?lz如果用vb.net会如何处理?有什么特殊的方法么?
    谢谢
      

  4.   

    回复人:clear_zero(清晰) 
    VB6的Recordset不支持索引或主键,仅能单向操作数据. 现不需写库,而是按一定的格式输出到String..