以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  根据帮助里面,做一个查询然后标记运行不了  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=186903)

--  作者:skyman1188
--  发布时间:2023/6/7 16:05:00
--  根据帮助里面,做一个查询然后标记运行不了

Dim lst1 As New List(of DataRow)
Dim
lst2 AS New List(of DataRow)
For Each
dr As DataRow In DataTables("表A").DataRows
    If DataTables(
"表A").Find("第二列 = " & dr("第一列")) Is Nothing Then
        lst1
.Add(dr)
    Else

        lst2
.Add(dr)
    End If
Next
For Each
dr As DataRow In lst1
    dr
("第三列") = True
Next
For Each
dr As DataRow In lst2
    dr
("第三列") = False
Next

我准备一个表里做一个查询,第一列是序号,查询第三列的数据如果在第二列里有就在第四列里把第二例这一行的序号填进去。

我在form框里做了一个按钮执行这一段帮助里的软件,执行出错。是哪里出了问题吗?


--  作者:有点蓝
--  发布时间:2023/6/7 16:09:00
--  
没看懂。请截图表格数据说明一下
--  作者:skyman1188
--  发布时间:2023/6/7 16:14:00
--  根据帮助里面,做一个查询然后标记运行不了
图片点击可在新窗口打开查看
就是查询第三列的数据,如果在第二列栏里面有,那就在第四列把序号填上,要是没有就不填内容

--  作者:有点蓝
--  发布时间:2023/6/7 16:21:00
--  
没有理解帮助的意思,参考的示例错了

Dim dict As New Dictionary(Of DataRow, String)
Dim pr As DataRow
For Each dr As DataRow In DataTables("表A").DataRows
    pr = DataTables("表A").Find("第二列 = \'" & dr("第三列") & "\'") 
    If pr IsNot Nothing Then
        dict.Add(dr, pr("第一列"))
    End If
Next
For Each dr As DataRow In dict.Keys
    dr("第四列") = dict(dr)
Next

[此贴子已经被作者于2023/6/7 16:49:56编辑过]

--  作者:skyman1188
--  发布时间:2023/6/7 16:41:00
--  还有点点问题
1 1 2 1
2 2 4 2
3 3
4 4
5 5

第四列数据应该是2和4,现在是1和2了

--  作者:有点蓝
--  发布时间:2023/6/7 16:50:00
--  
dict.Add(dr, pr("第一列"))
--  作者:skyman1188
--  发布时间:2023/6/7 16:52:00
--  
图片点击可在新窗口打开查看
您看,我希望第四列的数字是2,4,5,现在是,1,2,3

--  作者:有点蓝
--  发布时间:2023/6/7 16:53:00
--  
看6楼
--  作者:skyman1188
--  发布时间:2023/6/7 16:58:00
--  
谢谢版主,可以了。