以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]关于导入不同例内容 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=111289) |
-- 作者:stevenfm -- 发布时间:2017/12/19 16:07:00 -- [求助]关于导入不同例内容 Dim dlg As New OpenFileDialog dlg.Filter = "Excel文件|*.xls;*.xlsx" If dlg.ShowDialog =DialogResult.OK Then Dim t As Table = Tables("海报印刷与投递费用") Dim cs As String() = {"门店名", "订单号", "印刷量","投递量"} Dim cs2 As String() = {3,4,7,8} t.StopRedraw() Dim Book As New XLS.Book(dlg.FileName) \'定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表 For n As Integer = 2 To Sheet.Rows.Count -1 Dim r As DataRow = t.DataTable.Find("门店名 = \'" & sheet(n, 3).text & "\'") If r Is Nothing Then r = t.DataTable.AddNew() For i As Integer = 0 To cs2.length-1 r(cs(i)) = sheet(n, cs2(i)).Text Next Next t.ResumeRedraw() End If 以上代码可以导入,但是为什么导入每个表都会把原来的覆盖?不知道哪出错了?
[此贴子已经被作者于2017/12/19 16:07:17编辑过]
|
-- 作者:有点甜 -- 发布时间:2017/12/19 16:13:00 -- 如果不想覆盖,就这样写
Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog =DialogResult.OK Then
Dim t As Table = Tables("海报印刷与投递费用")
Dim cs As String() = {"门店名", "订单号", "印刷量","投递量"}
Dim cs2 As String() = {3,4,7,8}
t.StopRedraw()
Dim Book As New XLS.Book(dlg.FileName) \'定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表
For n As Integer = 2 To Sheet.Rows.Count -1
Dim r As DataRow = nothing \'= t.DataTable.Find("门店名 = \'" & sheet(n, 3).text & "\'")
If r Is Nothing Then r = t.DataTable.AddNew()
For i As Integer = 0 To cs2.length-1
r(cs(i)) = sheet(n, cs2(i)).Text
Next
Next
t.ResumeRedraw()
End If
[此贴子已经被作者于2017/12/19 16:13:28编辑过]
|