以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于从excel中提取内容 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=140090) |
||||
-- 作者:ygg8310 -- 发布时间:2019/8/29 11:08:00 -- 关于从excel中提取内容 这段代码在实际中会出现只能新增行却不能在Table中填写数据
|
||||
-- 作者:有点蓝 -- 发布时间:2019/8/29 11:18:00 -- Tables("表B").StopRedraw()放到循环外面 另外确定"卡号"是在execl的第一列?
|
||||
-- 作者:ygg8310 -- 发布时间: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 是这样吗? |
||||
-- 作者:有点蓝 -- 发布时间: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 -- 发布时间:2019/8/30 10:29:00 -- 已解决谢谢老师! |