Foxtable(狐表)用户栏目专家坐堂 → [求助] 合并时删除重复行


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

主题:[求助] 合并时删除重复行

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


加好友 发短信
等级:童狐 帖子:286 积分:2345 威望:0 精华:0 注册:2013/8/30 3:37:00
[求助] 合并时删除重复行  发帖心情 Post By:2015/2/8 17:26:00 [只看该作者]

我想合并导入excel数据,但是为了防止多次合并产生错误,1
1希望可以除去重复的行。
2希望合并完后有消息框
以上请版主指教

下面是合并的代码
Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger
    mg.SourcePath =dlg.FileName '指定数据文件
    mg.Format = "excel" '指定格式
    mg.SourceTableName = "data$" '指定要合并的表
    mg.DataTableName = "data汇总" '指定接收数据的表
    mg.Merge() '开始合并
End If

 回到顶部
帅哥哟,离线,有人找我吗?
黄训良
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1100 积分:8985 威望:0 精华:0 注册:2014/3/15 14:36:00
  发帖心情 Post By:2015/2/8 17:46:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/8 19:03:00 [只看该作者]

 merger无法排除重复行的。

 

 你需要用另一种方式合并数据,参考 http://www.foxtable.com/help/topics/2334.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
wangyinming
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:286 积分:2345 威望:0 精华:0 注册:2013/8/30 3:37:00
  发帖心情 Post By:2015/2/8 19:14:00 [只看该作者]

那请问甜老师,可以单独设置控件代码去重吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/8 19:30:00 [只看该作者]

以下是引用wangyinming在2015/2/8 19:14:00的发言:
那请问甜老师,可以单独设置控件代码去重吗?

 

可以。参考

 

 

Dim i As Integer
For i  = DataTables("表A").DataRows.Count-1 To 0 Step -1
    Dim dr As DataRow = DataTables("表A").DataRows(i)
    Dim dr2 As DataRow = DataTables("表A").Find("第一列='" & dr("第一列") & "' and 第二列='" & dr("第二列") & "' and _Identify <> " & dr("_Identify"))
    If dr2 IsNot Nothing Then
        dr2.Delete
    End If
Next


 回到顶部
帅哥哟,离线,有人找我吗?
wangyinming
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:286 积分:2345 威望:0 精华:0 注册:2013/8/30 3:37:00
  发帖心情 Post By:2015/2/8 19:42:00 [只看该作者]

这个可以了,我把代码加在合并后面的,谢谢

可以知道数据是否导完了或者合并了多少条数据。

另外批量合并数据我的为什么不行呢,看看哪里错了。

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "excel文件|*.xls" '设置筛选器
'dlg.MultiSelect = True   '允许选择多个文件
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger
    'For Each fl As String In dlg.FileNames
        mg.SourcePath =dlg.FileName '指定数据文件
        mg.Format = "excel" '指定格式
        mg.SourceTableName = "data$" '指定要合并的表
        mg.DataTableName = "data汇总" '指定接收数据的表
        mg.Merge() '开始合并
    'Next
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/8 19:48:00 [只看该作者]

 6楼的代码没有问题。

 

 如果要的都合并了多少条数据,可以在合并前,查询表有多少行数据,合并后,再查询有多少行数据。

[此贴子已经被作者于2015/2/8 19:47:57编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
wangyinming
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:286 积分:2345 威望:0 精华:0 注册:2013/8/30 3:37:00
  发帖心情 Post By:2015/2/8 21:29:00 [只看该作者]

如何写代码,求教

找了帮助没有找到

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/2/8 21:32:00 [只看该作者]

 DataTables("表A").DataRows.Count

 回到顶部
帅哥哟,离线,有人找我吗?
wangyinming
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:286 积分:2345 威望:0 精华:0 注册:2013/8/30 3:37:00
  发帖心情 Post By:2015/2/8 21:35:00 [只看该作者]

怎么在消息框中显示该数据

 回到顶部
总数 11 1 2 下一页