可以先倒入access,再转入sql
或者编写一个小程序逐个写入
首先创建 Excel 对象,使用ComObj:
var ExcelID: Variant;
ExcelID := CreateOleObject( 'Excel.Application' );
1) 显示当前窗口:
ExcelID.Visible := True;
2) 更改 Excel 标题栏:
ExcelID.Caption := '应用程序调用 Microsoft Excel';
3) 添加新工作簿:
ExcelID.WorkBooks.Add;
4) 打开已存在的工作簿:
ExcelID.WorkBooks.Open( 'C:\Excel\Demo.xls' );
5) 设置第2个工作表为活动工作表:
ExcelID.WorkSheets[2].Activate;
或
ExcelID.WorksSheets[ 'Sheet2' ].Activate;
6) 单元格值赋给表字段:
table1.field[1].value:=ExcelID.Cells[1,4].Value ;
或者编写一个小程序逐个写入
首先创建 Excel 对象,使用ComObj:
var ExcelID: Variant;
ExcelID := CreateOleObject( 'Excel.Application' );
1) 显示当前窗口:
ExcelID.Visible := True;
2) 更改 Excel 标题栏:
ExcelID.Caption := '应用程序调用 Microsoft Excel';
3) 添加新工作簿:
ExcelID.WorkBooks.Add;
4) 打开已存在的工作簿:
ExcelID.WorkBooks.Open( 'C:\Excel\Demo.xls' );
5) 设置第2个工作表为活动工作表:
ExcelID.WorkSheets[2].Activate;
或
ExcelID.WorksSheets[ 'Sheet2' ].Activate;
6) 单元格值赋给表字段:
table1.field[1].value:=ExcelID.Cells[1,4].Value ;
解决方案 »
- 多webbrowser提交验证码的问题
- 为什么不能在MOUSEDOWN事件中创建组件
- 怎样取得DBGridEh中指定列的某一行的数据?
- 100分相送 说有delphi5.x分布式多层应用电子商务篇的随书源代码,
- c/s模式数据库开发,如何根据显示器分辨率改变窗体大小?
- 程序的登录问题
- 如何给edit赋值。 在线........................
- 高手们怎么样判断一个数据是否是浮点型数据
- ?那位高手知道如何将压缩的医学影像格式dicom 3.0 文件(大约N百张连续影像)转为avi格式?[
- 关于DELPHI的COM+的组件的远程配置的问题
- 关于导入的实现构想,却......
- 500分征求做过QQ功能并突破代理服务器的朋友QQ号!?
1.设置ADOConnection的ConnectionString
构造ConnectionString时,OLE DB的提供者要选择Microsoft Jet 4.0 OLE DB Provider作为ADO的驱动程序。这本来是用于连接Access数据库的驱动程序,但也可打开Excel文件。
连接的数据库名称当然就是你要打开的Excel文件,注意扩展名是*.xls,而不是*.mdb。
最关键的一点是,还要设置扩展属性Extended Properties为“Excel 8.0”,否则,测试连接时会报告无法识别数据格式的错误。Extended Properties的属性值在“所有”参数页中输入。
最后,设置完成后的ConnectionString中的各项参数为:
Provider=Microsoft.Jet.OLEDB.4.0
Data Source=MyExcelFile.xls
Extended Properties=Excel 8.0
Persist Security Info=False2.设置ADODataSet或ADOTable
将ADODataSet或ADOTable连接到刚才的ADOConnection。如果不用ADOConnection,也可以参照上面的方法直接设置ADODataSet或ADOTable的ConnectionString属性。
对于ADODataSet,需要将CommandType属性设置为cmdTableDirect,而对于ADOTable,则将TableDirect属性设置为True。因为,访问Excel文件是直接的数据文件访问,不是通过SQL语句来操作游标访问的。如果不设置直接访问,则系统会报告SQL语句格式错误等信息。
然后,当你下拉ADODataSet中的CommandText属性或ADOTable的TableName属性时,就可以选择到要打开的工作表了。注意,表名后面多了加一个$符号。
3.打开ADODataSet或ADOTable
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\h033cs.xls;Extended Properties=Excel 8.0;Persist Security Info=False
这样是可以访问Excel的好用可以使用Ado的标准界面
TOpenDialog控件作的打开了Excel表以后,怎么把它与导入联系在一起呢?
manboo(L—横刀--L) :
你这个是静态的连接方式把??问题是我是要能让用户执行对任意一个表的导入?