以文本方式查看主题 - 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=114741) |
-- 作者:hrlong -- 发布时间:2018/2/19 23:14:00 -- [原创]初学者问下Excel导入代码优化 以下代码的excel文件是在固定位置的, 请问各位老师 怎么把代码优化成 Dim dlg As New OpenFileDialog dlg.Filter = "Excel文件|*.xls;*.xlsx" 类似这样的 打开电脑任意位置的excel文件的模式呢 ------------------------------------------------------------------------------ Dim Book As New XLS.Book("c:\\test\\订单.xls")Dim Sheet As XLS.Sheet = Book.Sheets(0) Tables("订单").StopRedraw() Dim nms1() As String = {"产品","客户","雇员"} Dim nms2() As String = {"表列名产品","表列名客户","表列名雇员"} For n As Integer = 1 To Sheet.Rows.Count -1 Dim r As Row = Tables("订单").AddNew() For i As Integer = 0 To sheet.Cols.Count -1 Dim idx As Integer = array.indexof(nms1, sheet(0,i).Text) If idx >= 0 Then r(nms2(idx)) = sheet(n, i).Text End If Next Next Tables("订单").ResumeRedraw() |
-- 作者:有点甜 -- 发布时间:2018/2/21 18:00:00 -- Dim dlg As New OpenFileDialog dlg.Filter = "Excel文件|*.xls;*.xlsx" If dlg.ShowDialog = DialogResult.OK Then Dim Book As New XLS.Book(dlg.FileName) Dim Sheet As XLS.Sheet = Book.Sheets(0) Tables("订单").StopRedraw() Dim nms1() As String = {"产品","客户","雇员"} Dim nms2() As String = {"表列名产品","表列名客户","表列名雇员"} For n As Integer = 1 To Sheet.Rows.Count -1 Dim r As Row = Tables("订单").AddNew() For i As Integer = 0 To sheet.Cols.Count -1 Dim idx As Integer = array.indexof(nms1, sheet(0,i).Text) If idx >= 0 Then r(nms2(idx)) = sheet(n, i).Text End If Next Next Tables("订单").ResumeRedraw() End If |