以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]利用EXCEL生成临时表代码出现错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=159060)

--  作者:sunion
--  发布时间:2020/12/12 10:32:00
--  [求助]利用EXCEL生成临时表代码出现错误
各位老师,如果想利用本地EXCEL的结构,生成一个一模一样的临时表“表D”,我的做法是是先获取EXCEL列名,然后赋值给要建立的临时表。
运行下列代码出现错误:索引超出范围。必须为非负值并小于集合大小。参数名: index

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



Dim dlg As new OpenFileDialog
dlg.Filter = "excel|*.xls"
If dlg.ShowDialog = DialogResult.OK Then
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    For i As Integer = 0 To sheet.cols.Count - 1
        \'msgbox(sheet(0,i).text)
        Dim dtb As New DataTableBuilder("表D")
        dtb.AddDef(sheet(0,i).text, Gettype(Object))     ‘----------代码错误,请问怎么修改?
        dtb.Build()
    Next
End If
[此贴子已经被作者于2020/12/12 10:40:47编辑过]

--  作者:有点蓝
--  发布时间:2020/12/12 10:41:00
--  
if sheet(0,i).text > ""
dtb.AddDef(sheet(0,i).text, Gettype(String))
end if

--  作者:sunion
--  发布时间:2020/12/12 11:04:00
--  
蓝蓝老师,代码修改后只会出现最后一列,前面所有的列都没有,不知道是什么问题?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:生产表 - 副本.table



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



--  作者:sunion
--  发布时间:2020/12/12 11:05:00
--  
蓝蓝老师,代码修改后只会出现最后一列,前面所有的列都没有,不知道是什么问题?


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

[此贴子已经被作者于2020/12/12 11:07:32编辑过]

--  作者:有点蓝
--  发布时间:2020/12/12 11:17:00
--  
Dim dlg As new OpenFileDialog
dlg.Filter = "excel|*.xls"
If dlg.ShowDialog = DialogResult.OK Then
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Dim dtb As New DataTableBuilder("表D")
    For i As Integer = 0 To sheet.cols.Count - 1
        Output.Show(sheet(0,i).text)
        If sheet(0,i).text > ""
            dtb.AddDef(sheet(0,i).text, Gettype(String))
        End If
    Next
    dtb.Build()
End If


--  作者:sunion
--  发布时间:2020/12/12 11:41:00
--  
蓝蓝老师,再请教一下,如果EXCEL本身是多层表头,以上代码如何修正一下呢?感谢你啊
--  作者:有点蓝
--  发布时间:2020/12/12 11:46:00
--  
Output.Show(sheet(0,i).text & “_” & Output.Show(sheet(1,i).text))
--  作者:sunion
--  发布时间:2020/12/12 12:18:00
--  
蓝蓝老师,出现了点错误


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

--  作者:有点蓝
--  发布时间:2020/12/12 13:35:00
--  
Output.Show(sheet(0,i).text & “_” & sheet(1,i).text)