以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]自定义合并多次导入部分数据重复 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=23260) |
|
-- 作者:chnfo -- 发布时间:2012/9/7 9:48:00 -- [求助]自定义合并多次导入部分数据重复 应用场景:有一个货物编号表,希望直接合并到表B中。 于是我在管理项目>菜单设计>程序菜单>项目里加了一个merge的项,参考帮助设置了代码。
[此贴子已经被作者于2012-9-7 9:54:53编辑过]
|
|
-- 作者:chnfo -- 发布时间:2012/9/7 10:40:00 -- 因为你多了后面那段 and coding = \'" & sheet(n,1).Value & "\'
把上面这段删了就不会导入重复的了, 我想你可能理解错了。 我是要把EXCEL表里的所有行都合并到表B中去,不论合并多少次,都只是EXCEL中的那些行。 判断重复的标准不是code列不重复,而是code+coding不重复。
[此贴子已经被作者于2012-9-7 10:40:52编辑过]
|
|
-- 作者:chnfo -- 发布时间:2012/9/7 11:03:00 --
[此贴子已经被作者于2012-9-7 11:46:48编辑过]
|
|
-- 作者:chnfo -- 发布时间:2012/9/7 12:45:00 --
其实我的目的是把猪杀死,要求不太过分,都可以接受。 用变通的方法可以完成。增加辅助列…… 不知各位狐神能不能指教一个更好的方法?
[此贴子已经被作者于2012-9-7 13:27:22编辑过]
|
|
-- 作者:lin_hailun -- 发布时间:2012/9/7 19:29:00 -- 楼主,可能是筛选条件没有注意到null值的情况。 Dim s1 As String = sheet(n, 0).Value Dim s2 As String = sheet(n, 1).Value Dim dr As DataRow = DataTables("表B").Find("(code = \'" & s1 & "\' or code is null and \'" & s1 & "\' = \'\') And (coding = \'" & sheet(n,1).Value & "\' or coding is null and \'" & s2 & "\' = \'\')") |
|
-- 作者:chnfo -- 发布时间:2012/9/10 17:08:00 -- 非常感谢。 试验有效。 |