Q&A

  • ADOquery를 이용해서 엑셀파일을 읽어올때
ADOquery를 이용해서 엑셀파일을 읽어올때
그 엑셀파일을 열어놓지 않으면

"외부테이블 형식이 잘못되었습니다" 라는 에러 메세지가 뜹니다.

물론 엑셀파일을 열어놓고 실행하면

제대로 작업이 진행되구요.

뭔가 빠진것 같은데 모르겠네요.

소스를 조금 적어보겠습니다.

         if OpenDialog1.Execute then
         begin
             //-------------------------------------------
             ADOQuery1.close;
             ADOQuery1.ConnectionString :=
                          'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +
                           OpenDialog1.FileName +
                          ';Extended Properties=Excel 8.0;Persist Security
                            info=False';
             ADOQuery1.SQL.Clear;
             ADOQuery1.SQL.Text := 'SELECT * FROM [급여$]'; <--여기에서 에러가 걸립니다

             ADOQuery1.open;

             //-------------------------------------------

             while not ADOQuery1.Eof do
             begin
                 ........

                 ADOQuery1.Next;

             end; //while1 - end

         end else
         begin
             pnlMsg.Caption   := ' ';
             exit;
         end;
1  COMMENTS
  • Profile
    아폴론 2002.05.17 19:02

    var MyExcel : variant;
    begin
             try
                MyExcei := CreateOleObject('Excel.Application');
                MyExcel := ('[APP.MAXIMIZE()]');
             Except
                On EOleError do Exit;
             end;