Foxtable(狐表)用户栏目专家坐堂 → 关于导入数据的问题


  共有9618人关注过本帖树形打印复制链接

主题:关于导入数据的问题

帅哥哟,离线,有人找我吗?
seupuff
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:13 积分:242 威望:0 精华:0 注册:2012/10/14 12:17:00
关于导入数据的问题  发帖心情 Post By:2012/10/29 20:48:00 [只看该作者]

在表的datacolchanging事件中设置
 
If e.DataCol.Name = "证书编号" Then
    Dim dr As DataRow
    dr = e.DataTable.Find("证书编号= '" & e.NewValue & "'")
    If dr IsNot Nothing Then
        If   MessageBox.Show( e.NewValue & "已经存在!终止导入?"," 提示",MessageBoxButtons.YesNo)=DialogResult.Yes Then
             e.Cancel = True
         End If
        
       End If
End If

保证表不会导入证书编号重复的行。
现在的问题是这样的,比如我导入有一百行的数据表,然后再把这个表重复导入,这个时候就回提示有重复,我确认以后提示第二条重复,再确认,然后第三条重复,如何在第一条重复提示的时候我就能退出导入,回去修改我的EXCEL文件去
请教高手指点
首先感谢sloyy 给予的参考代码,该问题已经解决,现在有个新的问题,就是使用填充方法剔除重复数据,如何才能知道都那些数据重复了? 采用我上面给出的代码可以知道那些重复了,但是遇到大量重复的时候没有办法退出。使用临时表中介,可是又不知道那些数据重复了,请高手指教一下,如何既能知道那些数据重复了,又能决定是否继续导入不重复的数据

 回到顶部
帅哥,在线噢!
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/10/29 20:55:00 [只看该作者]

编码导入:

http://www.foxtable.com/help/topics/2334.htm

 

例如:

 

Dim Book As New XLS.Book("c:\test\订单.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("订单").StopRedraw()
'注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
Dim nms() As String = {"编号","产品","客户","雇员","单价","折扣","数量","日期"}
For n As Integer = 1 To Sheet.Rows.Count -1
    Dim txt As String = Sheet(n,0).Text
    If DataTables("订单").Find("编号 = '" & txt & "'") Is Nothing Then '假定编号是字符型,判断同编号是否已经存在。
        Dim r As DataRow = DataTables("订单").AddNew()
        For m As Integer = 0 To nms.Length - 1
            r(nms(m)) = Sheet(n,m).Value
        Next
    End If
Next
Tables("订单").ResumeRedraw()

[此贴子已经被作者于2012-10-29 20:55:28编辑过]

 回到顶部