以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  银行流水导入怎样跳水过重复值  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90603)

--  作者:zoyong
--  发布时间:2016/9/18 10:15:00
--  银行流水导入怎样跳水过重复值
我现有的代码不会跳过重复值   求大神帮忙修改一下

Dim Book As New XLS.Book("c:\\银行流水.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("银行流水").StopRedraw()
\'注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
Dim nms() As String = {"流水号","交易日期","交易时间","汇入金额","汇出金额","余额","摘要","备注","对方账号","对方户名","交易渠道"}
\'注意下面的循环变量从2开始,而不是从0开始,因为Excel表的第一行是标题
For n As Integer = 2 To Sheet.Rows.Count -1
    Dim bh As String = sheet(n,0).Text
    Dim dr As DataRow = DataTables("银行流水").Find("交易时间 = \'" & bh & "\'")
 If dr Is Nothing Then \'如果不存在同编号的订单
        dr =  DataTables("银行流水").AddNew()
    End If
    For m As Integer = 0 To nms.Length - 1
        dr(nms(m)) = Sheet(n,m).Value
    Next
Next
Tables("银行流水").ResumeRedraw()



银行流水格式

图片点击可在新窗口打开查看此主题相关图片如下:搜狗截图16年09月18日1014_1.png
图片点击可在新窗口打开查看


--  作者:有点蓝
--  发布时间:2016/9/18 10:38:00
--  
Dim dr As DataRow = DataTables("银行流水").Find("流水号 = \'" & bh & "\'")
--  作者:zoyong
--  发布时间:2016/9/18 12:13:00
--  
流水号有可能会重复,不能用交易时间列吗,那增加个对方帐号列条件   怎么改
--  作者:有点蓝
--  发布时间:2016/9/18 12:22:00
--  
Dim dr As DataRow = DataTables("银行流水").Find("流水号 = \'" & bh & "\' and 交易时间=\'XXX\' and 对方帐号列=\'XXXXX\'")

要几个条件,看懂代码自己加