请教一下excel表如何在DELPHI中打开,并能delphi编程查找内容?.(50分)

  • 主题发起人 主题发起人 andyet
  • 开始时间 开始时间
A

andyet

Unregistered / Unconfirmed
GUEST, unregistred user!
请教一下excel表如何在DELPHI中打开,并能delphi编程查找内容?.
我用OLE,好像要打开的话双击就把EXCEL调出来了...用ADO吗?该如何操作呢?
我要实现的其实非常简单:在EXCEL的SHEET1中查询第一列所有行中内容=查询内容的行,然后将此行的内容复制保存到EXCEL的SHEET2中表尾.若第一列所有行中内容均与查询内容不同,则showmessage就行了.EXCEL表中第一列的数据是无重复的,均为15位字符,朋友们可以帮帮小妹吗?分数不够我另开贴子结,谢谢大家了.
 
我用ADO方式将EXCEL表打开.但在运行的时候,系统提示说:工程project1.exe检测到错误类EOleException 错误信息:'Microsoft Jet 数据库引擎打不开文件''.它已经被别的用户以独占方式打开,或没有查看数据的权限'.进程中止.使用单步或运行继续运行.
有人知道是怎么回事吗?我没有打开microsoft的其它OFFICE软件.
 
可能是你的打开时候的连接串不对。
我的程序片断
var no,i,j:integer;
tt:TStrings;
SheetName:string; //
begin
with datam.DataM1 do //首先查找数据库中是否已经存在。如果存在,则修改已经存在的数据。
begin
ExcelConnection.Close;
ExcelConnection.ConnectionString:='Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DSN=Excel Files;'+
'DBQ='+FileName+';DriverId=790;MaxBufferSize=2048;PageTimeout=5;"';
ExcelConnection.Open;
tt:=tstringlist.Create;
ExcelConnection.GetTableNames(tt,true);
SheetName:=tt.Strings[0];
ExcelQuery1.Close;
ExcelQuery1.SQL.Clear;
ExcelQuery1.SQL.Add('select * from ['+SheetName+'] '); //全部数据
ExcelQuery1.Open; //打开EXCEL文件.
if ExcelQuery1.IsEmpty then Exit; //excel中无数据,无法载入.
 
后退
顶部