以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  记录顺序  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=157063)

--  作者:朱女士
--  发布时间:2020/9/30 8:58:00
--  记录顺序

老师您好!

 我有一个项目表,想按表里的顺序,用代码填入另一个临时表中,我写的代码填入后,顺序全变了,怎么才能保持呢?

累计总产量
累计总产值
累计总成本
累计总盈亏
累计总单位产值
累计总单位成本
累计总单位盈亏
累计其中总原料成本
累计其中总费用分摊

代码:

For Each xm As String In DataTables("盈亏计算项目表").GetValues("项目名称")
    Dim dr As DataRow = DataTables("盈亏计算项目表").find("项目名称=\'" & xm & "\'")
    If dr IsNot Nothing Then
        Dim fr As DataRow = DataTables("盈亏计算总表").find("项目名称=\'" & xm & "\'")
        If fr Is Nothing Then
            fr=DataTables("盈亏计算总表").AddNew()
            fr("项目名称") = xm
        End If
    End If
Next


写入以后的顺序:

累计其中总原料成本
累计纸板产量
累计纸板产值
累计纸板成本
累计纸板单位产值
累计纸板单位成本
累计纸板单位盈亏
累计纸板盈亏
累计总产量
累计总产值
累计总成本

 

怎么处理这个问题呢?

谢谢!


--  作者:有点蓝
--  发布时间:2020/9/30 9:04:00
--  
项目表里的项目名称都是不重复的?试试

For Each xm As String In DataTables("盈亏计算项目表").GetValues("项目名称","_sortkey")

--  作者:朱女士
--  发布时间:2020/9/30 9:11:00
--  
老师:项目表里的项目名称没有重复值,我按照您的意见,写入以后出现错误信息:筛选表达式“_sortkey”的计算结果不是 Boolean 值项。我不知道咋处理。
--  作者:有点蓝
--  发布时间:2020/9/30 9:17:00
--  
如果都是不重复项,直接遍历table
For Each r as row In Tables("盈亏计算项目表").rows
    dim xm As String = r("项目名称")
    Dim dr As DataRow = DataTables("盈亏计算项目表").find("项目名称=\'" & xm & "\'")

--  作者:朱女士
--  发布时间:2020/9/30 9:23:00
--  
谢谢!