如何对Excel进行数据库连接

daniao7805 2005-01-17 02:43:55
我想把Excel标作为数据库连进delphi中,但不知道如何实现
...全文
333 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
net3 2005-01-18
  • 打赏
  • 举报
回复
关注!
daniao7805 2005-01-18
  • 打赏
  • 举报
回复
连是连上了,但怎么显示呢,用什么把表中字段都显示出来?
pinyu 2005-01-18
  • 打赏
  • 举报
回复
fhuibo(永远深爱一个叫“莎“的好女孩儿)
你说的方法连不上,那是连接Access表的
---------------------------------------------------
错了,他的话是对的,看起来像是连接Access的,实际上你可以选择隐藏在里面的显示所有文件即(*.*),默认情况下的确是只显示(*.mdb)即Access的文件,改成(*.*)后你可以导航到任意Excel文件,然后你可以像打开Access文件一样操作Excel,不过你最好在高级页面上的扩展属性里写上Excel 8.0。当连接创建好了,你可以用ADOTable,ADOQuery,ADODataSet中的任意一个组件打开Excel表格,
不过存取具体的数据表时要用[Sheet1$]来索引具体的表格,Sheet1,你肯定知道是工作表的名称,不同的是要加上$作为后缀,还有[]括起来,这样就不会出错,否则很可能会出错,但也不是绝对会错:)。最后一个要说明的是,你的Excel里面好像最好不要有合并单元格。
daniao7805 2005-01-18
  • 打赏
  • 举报
回复
谢谢大家的发言,铁手的话对
chinaandys 2005-01-18
  • 打赏
  • 举报
回复
不用连,就可以,用OpenRowSet、OpenDataSource
ironwill2004 2005-01-18
  • 打赏
  • 举报
回复
哈哈,搞定了
设置ADOquery1,在它的SQL属性中加入SQL语句如:Select * from [Sheet1$]
在设置该组件的Connectionstring属性,即选择Microsoft.Jet.OLEDB.4.0 下一步
选择路径: d:\aaa.xls,
最重要的要在“所有”页面中双击“Extended Properties“
然后再去测试连接即可连上
下面再加一个DataSource1组件和一个DBGrid1
这就不用再说了吧!

很重要的一点使用AdoTable好像不可以的
ironwill2004 2005-01-18
  • 打赏
  • 举报
回复
但是我试了,按下“测试连接”,它显示“测试连接失败,因为初始化提供程序时发生错误,不可识别的数据库格式,C:\book1.xls"
ironwill2004 2005-01-17
  • 打赏
  • 举报
回复
fhuibo(永远深爱一个叫“莎“的好女孩儿)
你说的方法连不上,那是连接Access表的
ironwill2004 2005-01-17
  • 打赏
  • 举报
回复
人家问得不是你们说的,连接上了应该怎么显示?字段怎么办?
这不象Access表可以直接用DBgrid显示,是不是这个意思?
lovend 2005-01-17
  • 打赏
  • 举报
回复
见数据源呀。
daniao7805 2005-01-17
  • 打赏
  • 举报
回复
如何在表中实现显示Excel表中的字段和内容
fhuibo 2005-01-17
  • 打赏
  • 举报
回复
会设置ADOConnection1
双击ADOConnection1 选择Microsoft.Jet.OLEDB.4.0 下一步
选择路径: d:\aaa.xls
daniao7805 2005-01-17
  • 打赏
  • 举报
回复
我不要程序,只要对控键属性的操作实现
fhuibo 2005-01-17
  • 打赏
  • 举报
回复
begin
ConnStr := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source= '+ edit1.Text + ';Extended Properties=Excel 8.0;';
if ADOConnection1.Connected then
ADOConnection1.Connected := false;
ADOConnection1.ConnectionString := ConnStr;
try
ADOConnection1.Connected := true;
Application.MessageBox('数据库连接成功','提示',mb_ok + mb_iconinformation);
except
Application.MessageBox('数据库连接失败','错误!',MB_OK+MB_ICONSTOP);
end;
end;

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧