Foxtable(狐表)用户栏目专家坐堂 → 导入excel


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

主题:导入excel

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


加好友 发短信
等级:五尾狐 帖子:1183 积分:8236 威望:0 精华:0 注册:2015/3/30 10:44:00
导入excel  发帖心情 Post By:2017/4/18 16:18:00 [只看该作者]

 Dim tsxx As WinForm.Label = e.Form.Controls("Label42")
    tsxx.text = "正在导入******,请耐心等待!"
    Dim Wb As MSExcel.Workbook = App.WorkBooks.Open("D:\销售出库单列表.xls")
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
    Tables("销售出库单列表").StopRedraw()
    '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
    Dim ra = ws.UsedRange
    Dim nms() As String = {"制单人","仓库编码","仓库","销售订单号","发货单号","出库日期","出库单号","出库类别","销售部门","业务员","客户名称","备注","存货编码","存货名称","主计量单位","数量","货运单号","发货地址"}
    '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
    For n As Integer = 2 To ra.Rows.Count
        Dim ckdh As String = ws.cells(n,8).Text
        Dim chbm As String = ws.cells(n,14).text
        If DataTables("销售出库单列表").SQLFind("出库单号 = '" & ckdh & "' and 存货编码 = '" & chbm & "'") Is Nothing Then '如果不存在同编号的计划表
            Dim r As Row = Tables("销售出库单列表").AddNew()
            For m As Integer = 0 To nms.Length - 1
                r(nms(m)) = ws.cells(n,m+1).Value
                r("导入日期") = Date.Today
                r.save
            Next
        End If
    Next

假如,excel有2行完全相同的数据,希望第一次都能导入,下次再导入的时候跳过去。这个条件判断怎么写?

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


加好友 发短信
等级:五尾狐 帖子:1183 积分:8236 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2017/4/18 16:58:00 [只看该作者]

帖子可不能沉啊。在线等。

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


加好友 发短信
等级:超级版主 帖子:110825 积分:564069 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/4/18 17:39:00 [只看该作者]

红色代码就是判断的。看看Excel数据是否有空格或者回车等字符

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


加好友 发短信
等级:五尾狐 帖子:1183 积分:8236 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2017/4/18 17:56:00 [只看该作者]

可不是这个意思哦。
比如我有10行完全一样的数据,如果按照红色代码,那么只能导入第一行,剩下的9行都导不进去。
但我的需求是,第一次是把这10行完全一样的数据都导进去。但后期不论导几次,excel里面的这10行都不能导入,要直接跳过。
是这个意思

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


加好友 发短信
等级:超级版主 帖子:110825 积分:564069 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/4/18 18:09:00 [只看该作者]

虽然可以做到。但是非常麻烦,效率非常低。不建议做这样的功能

 回到顶部