Foxtable(狐表)用户栏目专家坐堂 → [求助] 导入行不重复


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

主题:[求助] 导入行不重复

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
[求助] 导入行不重复  发帖心情 Post By:2016/3/1 17:54:00 [只看该作者]

 导入行有2列值重复(导入的excle表有2列和狐表2列值一样的话)跳过不导入该excle行 和excle该行覆盖狐表该行

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
  发帖心情 Post By:2016/3/1 18:02:00 [只看该作者]

第一次发帖求助,上传的附件怎么显示不了?


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
  发帖心情 Post By:2016/3/1 18:10:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:前2列值重复 判断跳过还是覆盖.xls

[此贴子已经被作者于2016/3/1 18:16:19编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/1 22:44:00 [只看该作者]

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim c As Integer = 0
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables("物料信息").StopRedraw()
   
    '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
    Dim nms() As String = {"条目类型","主题","创建日期","开始时间","结束时间","备忘录"}
    '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
    For n As Integer = 1 To Sheet.Rows.Count -1
        Dim lx As String = sheet(n,0).Text
        Dim zt As String = sheet(n,1).Text
        If DataTables("物料信息").Find("主题 = '" & zt & "' and 条目类型 = '" & lx & "'") Is Nothing Then '如果不存在同编号的订单
            Dim r As Row = Tables("物料信息").AddNew()
            For m As Integer = 0 To nms.Length - 1
                r(nms(m)) = Sheet(n,m).Value
            Next
        End If
    Next
    Tables("物料信息").ResumeRedraw()
End If

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
  发帖心情 Post By:2016/3/1 23:11:00 [只看该作者]

 谢红袍教主,这么晚还帮忙处理

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
  发帖心情 Post By:2016/3/2 15:26:00 [只看该作者]

 教主,导入的excle表有2列和狐表2列值一样的话,要覆盖狐表该行,代码怎么修改呢?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/2 16:12:00 [只看该作者]

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim c As Integer = 0
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables("物料信息").StopRedraw()
   
    '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
    Dim nms() As String = {"条目类型","主题","创建日期","开始时间","结束时间","备忘录"}
    '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
    For n As Integer = 1 To Sheet.Rows.Count -1
        Dim lx As String = sheet(n,0).Text
        Dim zt As String = sheet(n,1).Text
        Dim fdr As DataRow = DataTables("物料信息").Find("主题 = '" & zt & "' and 条目类型 = '" & lx & "'")
        If fdr Is Nothing Then '如果不存在同编号的订单
            fdr = DataTables("物料信息").AddNew()
        End If
        For m As Integer = 0 To nms.Length - 1
            fdr(nms(m)) = Sheet(n,m).Value
        Next
    Next
    Tables("物料信息").ResumeRedraw()
End If

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(大红袍)Dim dlg As New OpenFileDialog '定义...  发帖心情 Post By:2019/3/26 7:54:00 [只看该作者]

求助,导入的excle表200多列,只有这200列值和狐表里面的值不一样才要实现导入呢?也就是如果这200列都一样就不导入。
还有怎样筛选显示出狐表新增的行,已存的行那个单元格变化了,颜色突显?

也就是两个表不同之处筛选显示
[此贴子已经被作者于2019/3/26 9:34:38编辑过]

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


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

1、动态合成条件啊

 

Dim fdr As DataRow = DataTables("物料信息").Find("主题 = '" & zt & "' and 条目类型 = '" & lx & "'")

 

2、显示新增的行,参考

 

http://www.foxtable.com/webhelp/scr/0112.htm

 

3、显示修改的值,参考

 

http://www.foxtable.com/webhelp/scr/1630.htm

 


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)1、动态合成条件啊 Dim fdr...  发帖心情 Post By:2019/3/26 11:25:00 [只看该作者]

 Dim fdr As DataRow = DataTables("物料信息").Find("主题 = '" & zt & "' and 条目类型 = '" & lx & "'")   200列红色这写太长了,能简单一点的集写法嘛?

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