delphi取excel工作表名

jxbw7408 2008-08-25 04:02:13
我用ADOdataset连接到excel文件
ADOdataset1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+Opendialog1.FileName+';Extended Properties=Excel 8.0;Persist Security Info=False';

现在想取 被连接表格的中的表名,,,,默认是的SHEET1.......如何不是默认表名,,,就需要取出来.....


请老师....
...全文
468 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jjwang2004 2009-09-08
  • 打赏
  • 举报
回复
顶你了~~~~~~~~~~
jxbw7408 2008-08-26
  • 打赏
  • 举报
回复
在网上又查了一下...得以解决....


代码知道了.但不知意思....先用着吧...改天再来理解....
jxbw7408 2008-08-26
  • 打赏
  • 举报
回复
原样复制后,发现如何是中文表名是没法取的.
jxbw7408 2008-08-25
  • 打赏
  • 举报
回复
判断结果没有,,那如何取出表名来呢?我得要它们的名称....
lyguo 2008-08-25
  • 打赏
  • 举报
回复
function MyTableExists(const ATableName: string;sConnStr: string): boolean;
{**********************************
功能:检查数据库里是否存在某个数据表,true存在,false不存在
更新时间:20041029
***********************************}
var
SL: TStringList;
I: integer;
S: string;
iConnect: TADOConnection;
begin
Result := False;
S := UpperCase(ATableName);
SL := TStringList.Create;
iConnect := TADOConnection.Create(nil);
try
iConnect.ConnectionString := sConnStr;
iConnect.LoginPrompt := False;
iConnect.GetTableNames(SL, False); //取得表名
for I := 0 to (SL.Count - 1) do
begin
if UpperCase(SL[I]) = S then
begin
Result := True;
Break;
end;//if/
end;//for/
finally
SL.Free;
iConnect.Connected := False;
iConnect.Free;
end;//try/
end;


用这个判断有表没有

16,749

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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