从excel倒数据到sql server的问题 (60分)

  • 主题发起人 主题发起人 sjloop
  • 开始时间 开始时间
S

sjloop

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大虾,你们好!
我现在有个问题,就是我从excel里通过ADOQuery控件将数据倒入sql server中,因为我的excel表有多个sheet,如sheet1,sheet2等等,
当xlSheet:=xlApp.WorkBooks.Open(FileName);打开后,我不知道怎样才能选中我想要的sheet!!请各位大虾帮帮忙,谢了!
补充
var
xlSheet,xlApp:variant;
---------------------------
xlApp:=CreateOleObject('excel.application');
xlSheet:=CreateOleObject('excel.sheet');
FileName是要打开的excel文件名
 
很久没有用过delphi了
不过我记得 vb 的 f1book 中 可以 直接 写
set f1book.sheet =i
这样就能切换了。delphi中应该也一样。只是我很久没动过 delphi了给不了你实例
 
回答:
1。可以使用brown0432所说的方法,但是Delphi自带的f1ook,为3.0版本,打不开excel2000的文件,可以下载最新的6.0或更高版本,然后安装,它是ActiveX控件。使用该控件将excel2000文件读入,通过循环,利用ADOQuery,将数据写入sql server。
2。使用你所说的方法一样可行,
需要用到:
首先创建 Excel 对象,使用ComObj:
var ExcelApp: Variant;
ExcelApp := CreateOleObject( 'Excel.Application' );

1) 显示当前窗口:
ExcelApp.Visible := True;

2) 更改 Excel 标题栏:
ExcelApp.Caption := '应用程序调用 Microsoft Excel';

3) 添加新工作簿:
ExcelApp.WorkBooks.Add;

4) 打开已存在的工作簿:
ExcelApp.WorkBooks.Open( 'C:/Excel/Demo.xls' );

5) 设置第2个工作表为活动工作表:
ExcelApp.WorkSheets[2].Activate;

ExcelApp.WorksSheets[ 'Sheet2' ].Activate;

6) 给单元格赋值:
ExcelApp.Cells[1,4].Value := '第一行第四列';
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
781
import
I
I
回复
0
查看
610
import
I
后退
顶部