首页 > 代码库 > delphi的TAdoQuery读取Excel数据

delphi的TAdoQuery读取Excel数据

1. 连接

需要设置TAdoQuery的连接串Connection,将其指向excel文件:Provider=Microsoft.ACE.OLEDB.12.0;Data Source= + excelname + ; +    Mode=ReadWrite;Extended Properties=Excel 12.0;Persist Security Info=False;然后设置sql属性为:select * from [list&];   //此处的list为excel工作表的名称,后面带一个$,且只能读取单工作表,多工作表还没解决

设置好以后就可以读取excel内容,就像是读取一个数据表内容一样:

try    with qryexcel do    begin      open;      First;      dqrow := 1;      while not Eof do      begin        if dqrow > 1 then // 从第3行开始正式内容        begin                   sqls := Format( call pro_addOneStudent ( +            ‘‘%s‘‘,‘‘%s‘‘,‘‘%s‘‘,‘‘%s‘‘ ),            [FieldByName(‘StuName).AsString, FieldByName(Sex).AsString,            FieldByName(School).AsString, FieldByName(Grade).AsString]);with qry do          begin            qry.close;            qry.SQL.Clear;            qry.SQL.Add(sqls);            log(sqls);            qry.ExecSQL;          end;        end;        dqrow := dqrow + 1;        Next;      end;    end;  except    on e: Exception do    begin      Result := e.Message;      end;  end;

2. 遇到连接异常或是未安装某程序

下载并安装AccessDatabaseEngine.exe

 

delphi的TAdoQuery读取Excel数据