以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=157526) |
||||
-- 作者:lds -- 发布时间:2020/10/19 16:21:00 -- [求助]
表A 取采购员列前4位和厅代码列前4位做比较, 如果前4位不相同就在标记列写入:厅代码与采购员不符 窗口按钮代码设置 For Each dr As DataRow In DataTables("表A").datarows Dim val As String = dr("厅代码") Dim drr As DataRow = Nothing If val > "" Then drr = DataTables("表A").find("Substring(采购员,1,4) <> Substring(厅代码,1,4) ") End If If drr IsNot Nothing Then dr("标记")="厅代码与采购员不符" Else dr("标记")= Nothing End If Next 上述代码不生效 所有标记行都是 厅代码与采购员不符 请帮忙看看 drr = DataTables("表A").find("Substring(采购员,1,4) <> Substring(厅代码,1,4) ") 该怎么写
|
||||
-- 作者:lds -- 发布时间:2020/10/19 16:24:00 -- 此主题相关图片如下:错误.jpg 执行代码后是这样 |
||||
-- 作者:lds -- 发布时间:2020/10/19 16:24:00 -- 此主题相关图片如下:截图1.jpg 希望是这样 |
||||
-- 作者:有点酸 -- 发布时间:2020/10/19 16:54:00 -- 只有同一行的采购员和厅代码比较? 还是采购员只要和任意一行的厅代码匹配了就行? |
||||
-- 作者:lds -- 发布时间:2020/10/19 17:02:00 -- 同一行的做比较,前4为相同就留空,不同就标记 |
||||
-- 作者:有点酸 -- 发布时间:2020/10/19 17:10:00 -- For Each dr As DataRow In DataTables("表A").datarows Dim val1 As String = dr("厅代码") Dim val2 As String = dr("采购员") If val1.Length > 4 AndAlso val2.Length>4 AndAlso val1.SubString(0,4) = val2.SubString(0,4) Then dr("标记") = "匹配" Else dr("标记") = "不匹配" End If Next |
||||
-- 作者:lds -- 发布时间:2020/10/19 17:24:00 -- 谢谢,效果很好. |