注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

鑫淼梦园的博客

圆你的梦想 从这里开始

 
 
 

日志

 
 

【转载】delphi用ADO连接EXCEL的实例-EXCEL表名自动获取  

2014-05-02 15:50:44|  分类: delphi xe5 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

用adoquery呀
给你一个例子。
//用ADO控制excel

/*
OpenDialog1 : TOpenDialog1;
ADOConnection1 : TADOConnection;
//手工连接到Excel时,须将Extended Properties设置为Excel 8.0
ADOQuery1 : TADOQuery;
*/

procedure TForm1.BitBtn1Click(Sender: TObject);
Var
sFileName, sTableName : String;
sl : TStringList;
begin
If Not OpenDialog1.Execute Then Exit;
sFileName := OpenDialog1.FileName;
ADOConnection1.Connected := False;
ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=' + sFileName + ';Extended

Properties=Excel 8.0;Persist Security Info=True';
ADOConnection1.Connected := True;
//
sl := TStringList.Create;
ADOConnection1.GetTableNames(sl); //sl是表名列表(Excel中可能有很多个sheet)
//Excel表中可能有很多个sheet,可以循环,本程序只处理了第一个sheet(sl[0])
//for i := 0 to sl.Count-1 Do
//begin
// sTableName := sl[i];
//end;
sTableName := sl[0];
If Pos('$', sTableName)>0 Then sTableName := '[' + sTableName + ']';
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text := 'SELECT * FROM ' + sTableName + ‘where id =’+ 你自己输入的值比如说edit1.text;
ADOQuery1.Open;
sl.Free;
end;
最后再while not adoquery1.eof do进行读取
  评论这张
 
阅读(72)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017