以文本方式查看主题

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

--  作者:ffffff
--  发布时间:2012/12/4 15:55:00
--  请问当导入的excel表中的列名称含有特殊字符如何导入?
需要导入的excel表的字段名称含有特殊字符如“”“”,导致合并数据的时候,这样的列的数据无法正常导过来,其他的列没有问题,请问,在不修改源excel字段名称的前提下该如何处理?谢谢!
--  作者:lin_hailun
--  发布时间:2012/12/4 16:04:00
--  
 帮助文档有一段导出的代码,你可以修改一下改成导入。

http://www.foxtable.com/help/topics/1148.htm

--  作者:tablefox
--  发布时间:2012/12/4 16:26:00
--  
这个是导出数据的,和导入的不一样。
图片点击可在新窗口打开查看此主题相关图片如下:2012-12-04_162528.jpg
图片点击可在新窗口打开查看

--  作者:tablefox
--  发布时间:2012/12/4 16:57:00
--  
利用:mg.FieldMaps.Add("ID","编号")
这个语句可以解决一些字段,但是这种字段的导入还是无法解决,改如何处理,请指教,谢谢!
图片点击可在新窗口打开查看此主题相关图片如下:2012-12-04_165525.jpg
图片点击可在新窗口打开查看

--  作者:lin_hailun
--  发布时间:2012/12/4 17:06:00
--  
 导入excel的代码如下,放到命令窗口里执行,就行了。

Dim dlg As New OpenFileDialog
dlg.MultiSelect = True
If dlg.ShowDialog = DialogResult.OK Then
    Dim Book As New XLS.Book(dlg.FileName) \'定义一个Excel工作簿
    Dim Sheet As XLS.Sheet = Book.Sheets(0)   \'引用工作簿的第一个工作表
   
    Dim dtb As New DataTableBuilder("订单")
    For c As Integer = 0 To Sheet.Cols.Count -1   \'添加列标题
        dtb.AddDef("zd" & c, Gettype(String), 32, "", Sheet(0, c).Value)
    Next
    dtb.Build()
    Dim t As Table = Tables("订单")
   
    For r As Integer = 0 To sheet.Rows.Count - 1 \'填入数据
        Dim nr As Row = t.AddNew
        For c As Integer = 0 To t.Cols.Count -1
            nr(c) = Sheet(r +1, c).Value
        Next
    Next
    MainTable= Tables("订单")
End If

--  作者:tablefox
--  发布时间:2012/12/4 17:55:00
--  
谢谢回复,已解决。
--  作者:guozc
--  发布时间:2016/7/14 22:28:00
--  
大神,请容我膜拜一下.
--  作者:大红袍
--  发布时间:2016/7/14 22:35:00
--  
mark 新建表导入excel