以文本方式查看主题

-  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=117021)

--  作者:huangjiacai
--  发布时间:2018/4/4 11:47:00
--  [求助]导入excel数据

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
我用excel收集很多的数据,现在想导入到狐表中,不知道如何操作,求助,谢谢!
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2018/4/4 11:50:16编辑过]

--  作者:huangjiacai
--  发布时间:2018/4/4 11:56:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:1.zip

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

另外,我是有多个excel表数据的,需要合并导入,看了帮助文档,试了下,不行。
图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2018/4/4 12:24:00
--  
Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog =DialogResult.OK Then
    Dim t As Table = Tables("月份1")
    t.StopRedraw()
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    For n As Integer = 3 To Sheet.Rows.Count -1
        Dim r As DataRow = Nothing \'= t.DataTable.Find("第一列 = \'" & sheet(n, 0).text & "\'")
        If r Is Nothing Then r = t.DataTable.AddNew()
        For i As Integer = 0 To sheet.Cols.Count -1
            Dim cname As String = sheet(2, i).text.replace("/", "")
            If cname > "" AndAlso t.Cols.Contains(cname) Then
                r(cname) = sheet(n, i).Text
            End If
        Next
    Next
    t.ResumeRedraw()
End If

--  作者:huangjiacai
--  发布时间:2018/4/4 15:43:00
--  
那我excel里面有多个表,分别是1月份.2月份。。。。这样子,要怎么改呢?
--  作者:有点甜
--  发布时间:2018/4/4 15:45:00
--  

Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog =DialogResult.OK Then
    Dim t As Table = Tables("月份1")

    t.ResumeRedraw()
    t.StopRedraw()
    Dim Book As New XLS.Book(dlg.FileName)   
    For Each sheet As xls.sheet In book.sheets       
        For n As Integer = 3 To Sheet.Rows.Count -1
            Dim r As DataRow = Nothing \'= t.DataTable.Find("第一列 = \'" & sheet(n, 0).text & "\'")
            If r Is Nothing Then r = t.DataTable.AddNew()
            For i As Integer = 0 To sheet.Cols.Count -1
                Dim cname As String = sheet(2, i).text.replace("/", "")
                If cname > "" AndAlso t.Cols.Contains(cname) Then
                    r(cname) = sheet(n, i).Text
                End If
            Next
        Next
    next
    t.ResumeRedraw()
End If


--  作者:huangjiacai
--  发布时间:2018/5/29 12:50:00
--  
老师,这是之前你发给我的导入excel表数据的代码。我这次想导入的数据跟以前不一样,我换了个表名导入不成功。不知道是什么问题,求助。
Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog =DialogResult.OK Then
    Dim t As Table = Tables("预算总表")
    t.StopRedraw()
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    For n As Integer = 3 To Sheet.Rows.Count -1
        Dim r As DataRow = Nothing \'= t.DataTable.Find("第一列 = \'" & sheet(n, 0).text & "\'")
        If r Is Nothing Then r = t.DataTable.AddNew()
        For i As Integer = 0 To sheet.Cols.Count -1
            Dim cname As String = sheet(2, i).text.replace("/", "")
            If cname > "" AndAlso t.Cols.Contains(cname) Then
                r(cname) = sheet(n, i).Text
            End If
        Next
    Next
    t.ResumeRedraw()
End If
[此贴子已经被作者于2018/5/29 12:50:23编辑过]

--  作者:huangjiacai
--  发布时间:2018/5/29 12:51:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:huangjiacai
--  发布时间:2018/5/29 12:53:00
--  
1
图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

--  作者:huangjiacai
--  发布时间:2018/5/29 14:36:00
--  
老师,有空帮我看一下吗?我记得我选择了回复你了,不过好像没用,上面帖子内容。
--  作者:有点甜
--  发布时间:2018/5/29 14:53:00
--  
foxtable项目和你的excel文件一起发上来测试。