Foxtable(狐表)用户栏目专家坐堂 → 从EXCEL中抓取数据到Table中


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

主题:从EXCEL中抓取数据到Table中

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


加好友 发短信
等级:小狐 帖子:372 积分:3213 威望:0 精华:0 注册:2013/5/6 10:15:00
从EXCEL中抓取数据到Table中  发帖心情 Post By:2015/6/5 10:28:00 [只看该作者]

将图1的表中的数据抓取到table中如图2,图1黄颜色的为订单编号,底下对应的是产品防伪码,订单编号是从"DD"开头的,每个订单底下的防伪码数量不确定。记得论坛有人做过从EXCEL报表中抓取数据但是例子找不到了!
此主题相关图片如下:qq图片20150605101225.jpg
按此在新窗口浏览图片

此主题相关图片如下:qq图片.jpg
按此在新窗口浏览图片

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/6/5 10:29:00 [只看该作者]

项目文件 和Excel 文件例子发上来.

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


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

 循环每一行,每次增加一行,如果DD开头的,就不增加行,记录编号下次用

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


加好友 发短信
等级:小狐 帖子:372 积分:3213 威望:0 精华:0 注册:2013/5/6 10:15:00
  发帖心情 Post By:2015/6/5 10:48:00 [只看该作者]

袍哥,能否帮忙完善下这个示例!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:订单扫码.xlsx


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/6/5 10:57:00 [只看该作者]

Dim Book As New XLS.Book("C:\Users\newpoc\Desktop\订单扫码.xlsx")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("表A").StopRedraw()
Dim dd As String
For n As Integer = 1 To Sheet.Rows.Count -1
    If Sheet(n,0).Value.StartsWith("DD") Then
        dd = Sheet(n,0).Value
    Else If dd <> "" Then
        Dim r As Row = Tables("表A").AddNew()
        r("订单") = dd
        r("防伪码") = Sheet(n,0).Value
    End If
Next
Tables("表A").ResumeRedraw()

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/6/5 10:58:00 [只看该作者]

Dim Book As New XLS.Book("C:\Users\newpoc\Desktop\订单扫码.xlsx")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("表A").StopRedraw()
Dim dd As String
For n As Integer = 0 To Sheet.Rows.Count -1
    If Sheet(n,0).Value.StartsWith("DD") Then
        dd = Sheet(n,0).Value
    Else If dd <> "" Then
        Dim r As Row = Tables("表A").AddNew()
        r("订单") = dd
        r("防伪码") = Sheet(n,0).Value
    End If
Next
Tables("表A").ResumeRedraw()

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


加好友 发短信
等级:小狐 帖子:372 积分:3213 威望:0 精华:0 注册:2013/5/6 10:15:00
  发帖心情 Post By:2015/6/5 11:09:00 [只看该作者]

这个还是有点问题,是逐行判断如果是订单编码那么找他下面的数据,直到下一个订单编码出现,这个示例excel中有几个订单编码,但是没区分开!
图片点击可在新窗口打开查看此主题相关图片如下:44.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/6/5 11:13:00 [只看该作者]

看6楼代码.当然是区分开了.你把列宽拉宽一点就看到了

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


加好友 发短信
等级:小狐 帖子:372 积分:3213 威望:0 精华:0 注册:2013/5/6 10:15:00
  发帖心情 Post By:2015/6/5 11:16:00 [只看该作者]

谢谢,非常感谢!

 回到顶部