怎么能导入大量的excel文件数据,使用那种一行一行读取的太慢了' Dim mg As New Merger
' '订单明细的数据很多,采用合并的方式导入,采用上面的读取,数据量多会出现问题
' mg.SourcePath = dlg.FileName
' mg.Format = "excel" '指定格式
' mg.SourceTableName = "订单明细$" '指定要合并的表
' mg.DataTableName = tbname3 '指定接收数据的表
' For i As Integer = 0 To cols3.Count - 1
' mg.FieldMaps.Add(cols3(i), site3(i)) '这是一个集合,要合并的表和接收数据的表的字段名称存在不一致的情况下,可以用此集合指定两个表之间字段的对应关系。左边表格,右边列
' Output.Show(cols3(i) & "" & site3(i))
' Next
' mg.Merge() '开始合并
使用merger有限定excel文件必须为.xls结尾,而且还有一个问题,总是会莫名其妙的的报单元格数据类型格式有误,但是那个单元格明明是空的,没有数据。
复制数据粘贴到一个新的文件里面,导入成功了,但是这种处理方式有的时候也还是没有用。
求助,求助,有没有别的方式能快速导入大量数据!!!
Merger用于合并数据。
合并的速度要远低于导入,所以如果有大量数据要引入管理项目中,最好用导入。
http://www.foxtable.com/webhelp/topics/0684.htm
[此贴子已经被作者于2024/8/5 18:58:02编辑过]
1、帮助没看仔细,merger可以导入.xlsx
合并Excel2007文件:
Dim mg As New Merger
mg.SourcePath = "c:\data\销售管理.xlsx"
mg.Format = "excel2007" '指定格式
mg.SourceTableName = "订单" '指定要合并的表
mg.DataTableName = "订单" '指定接收数据的表
mg.Merge() '开始合并
Format
指定合并格式,包括Access、Access2007、Excel、Excel2007、dBASE、Delimited、Fixed等格式
其中Delimited为符号分割的文本文件,Fixed为固定列宽的文本文件。
默认为Access。
2、单元格肯定是有数据的,比如空格,回车符等看不见的数值,或者公式、引用等等。这种如果对应目的表的列类型为数值型就会出错
看了好像不可以,因为我的excel里面的列名和狐表里面的列名不一致,然后我看merge可以用
FieldMaps指定对应关系
下载安装下面的数据访问组件:
http://www.foxtable.com/download/AccessDatabaseEngine.exe