Foxtable(狐表)用户栏目专家坐堂 → 关于从excel中提取内容


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

主题:关于从excel中提取内容

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
关于从excel中提取内容  发帖心情 Post By:2019/8/29 11:08:00 [只看该作者]


这段代码在实际中会出现只能新增行却不能在Table中填写数据
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:问题代码.rar


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110784 积分:563852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/29 11:18:00 [只看该作者]

Tables("表B").StopRedraw()放到循环外面

另外确定"卡号"是在execl的第一列?

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2019/8/29 13:36:00 [只看该作者]

 For n As Integer = 1 To Sheet.Rows.Count -2

            Dim r As Row = Tables("B").AddNew()

            For m As Integer = 0 To nms.Length - 2

                r(nms(m)) = Sheet(n,m).Value

           

        Next

    Next

Tables("B").ResumeRedraw()

 

End If

Next

是这样吗?


 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110784 积分:563852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/29 14:30:00 [只看该作者]

Tables("表B").StopRedraw()
For Each file As String In filesys .GetFiles("d:\ceshi\excel3")
    If file.EndsWith(".xls") OrElse file.EndsWith(".xlsx") Then
        
        Dim Book As New XLS.Book(file)
        Dim Sheet As XLS.Sheet = Book.Sheets(0)

        '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
        Dim nms() As String = {"卡号"}
        '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
        For n As Integer = 1 To Sheet.Rows.Count -2
            Dim r As Row = Tables("表B").AddNew()
            For m As Integer = 0 To nms.Length - 2
                r(nms(m)) = Sheet(n,m).Value
            
        Next
    Next
End If
Next

Tables("表B").ResumeRedraw()

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


加好友 发短信
等级:四尾狐 帖子:989 积分:8833 威望:0 精华:0 注册:2016/4/10 14:33:00
  发帖心情 Post By:2019/8/30 10:29:00 [只看该作者]

已解决谢谢老师!

 回到顶部