以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于运行中退出的问题,请高手指教  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=24983)

--  作者:seupuff
--  发布时间:2012/10/28 19:26: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 给予的参考代码,该问题已经解决,现在有个新的问题,就是使用填充方法剔除重复数据,如何才能知道都那些数据重复了? 采用我上面给出的代码可以知道那些重复了,但是遇到大量重复的时候没有办法退出。使用临时表中介,可是又不知道那些数据重复了,请高手指教一下,如何既能知道那些数据重复了,又能决定是否继续导入不重复的数据
[此贴子已经被作者于2012-10-29 20:46:08编辑过]

--  作者:czy
--  发布时间:2012/10/28 20:22:00
--  

我觉得还是先导入临时表,再Filler来得简单。

 


--  作者:y2287958
--  发布时间:2012/10/28 20:59:00
--  
确实如2楼所说
俺也是逗了很大的弯
最终才回到2楼的方法

--  作者:seupuff
--  发布时间:2012/10/28 21:10:00
--  [求助]关于运行中退出的问题,请高手指教
麻烦给个参考代码,导入临时表以后,然后怎么办,我是新手,刚接触狐表不超过一周,不懂
--  作者:seupuff
--  发布时间:2012/10/28 21:11:00
--  
以下是引用czy在2012-10-28 20:22:00的发言:

我觉得还是先导入临时表,再Filler来得简单。

 

麻烦给个参考代码


--  作者:czy
--  发布时间:2012/10/28 21:39:00
--  

你发个excel文件,再发一个项目示例文件,这样别人才方便给你写代码。


--  作者:sloyy
--  发布时间:2012/10/28 21:53:00
--  

做一个窗口,放一个按钮,在Click事件里面写代码

 

例如从临时表中提取不重复的客户、产品数据,填充到统计表中:

dim f As New Filler
f
.SourceTable = DataTables("临时单") \'指定数据来源
f
.SourceCols = "产品,客户" \'指定数据来源列
f
.DataTable = DataTables("统计") \'指定数据接收表
f
.DataCols = "产品,客户" \'指定数据接收列

f.ExcludeExistValue=true  \'排除接收表中已经存在的内容
f.Fill()
\'填充数据

导入临时表后  点击按钮