用ADO打开xls文件并显示在grid里

控件:OpenDialog1,ADOConnection,ADOQuery2

用ADOQuery来处理xls表里的数据,把它当成数据库一样地用SQL 语句来显示在grid里。

首先是要获取xls文件的路径名。

设置要打开的文件属性并过滤,并将获取的路径名放到EDIT框中。

OpenDialog1.filter:='Txt(*.xls)|*.xls';
OpenDialog1.defaultext:= '*.xls';
 if OpenDialog1.Execute then
 Edit9.text := OpenDialog1.FileName;

设置Adoquery1的connectionString=Provider=Microsoft.Jet.OLEDB.4.0;Data Source=+路径名+;Extended Properties=Excel 8.0;Persist Security Info=Fals


所以,在button的事件中代码如下:

procedure TForm4.Button4Click(Sender: TObject);
var
str1,str2:String;
begin
OpenDialog1.filter:='Txt(*.xls)|*.xls';
OpenDialog1.defaultext:= '*.xls';
       if OpenDialog1.Execute then
       Edit9.text := OpenDialog1.FileName;
Adoquery1.Close;
Adoquery1.Connectionstring:='';
Str1:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=';
str2:=';Extended Properties=Excel 8.0;Persist Security Info=False';
Edit10.Text:=Str1+Edit9.Text+Str2;
Adoquery1.Connectionstring:=Str1+Edit9.Text+Str2;


  Adoquery1.close;
  Adoquery1.sql.clear;
  Adoquery1.sql.add('select * from  [sheet1$]' );
  Adoquery1.open;
end;

这样打开的xls文件里的sheet1表中的数据就显示在grid中了。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值