Q&A

  • 엑셀이 열리지 않아요..
Exl : Variant; //전역변수선언



procedure TFmTm101.mp_print1

begin

try

Exl := CreateOleObject('Excel.Application');

except

MessageDlg('Excel이 설치되어 있지 않습니다.', MtWarning, [mbok], 0);

Exit;

end;

..

..

end;



A프로젝트에서 잘 되는 위 구문을 B프로젝트로 옮겼거든요

근데 A프로젝트에서는 잘 되는데 옮긴 B프로젝트에서는

Exl := CreateOleObject('Excel.Application'); 요기서 다음과 같은 에러가 발생합니다.

"EOlesysErrorwtitMessage'Colnitialize를 호출하지 않았습니다'라는....



고수님들 왜 그런지 도와 주십시요... 감사합니다...





1  COMMENTS
  • Profile
    초보 2001.09.21 02:17
    초보 wrote:

    > Exl : Variant; //전역변수선언

    >

    > procedure TFmTm101.mp_print1

    > begin

    > try

    > Exl := CreateOleObject('Excel.Application');

    > except

    > MessageDlg('Excel이 설치되어 있지 않습니다.', MtWarning, [mbok], 0);

    > Exit;

    > end;

    > ..

    > ..

    > end;

    >

    > A프로젝트에서 잘 되는 위 구문을 B프로젝트로 옮겼거든요

    > 근데 A프로젝트에서는 잘 되는데 옮긴 B프로젝트에서는

    > Exl := CreateOleObject('Excel.Application'); 요기서 다음과 같은 에러가 발생합니다.

    > "EOlesysErrorwtitMessage'Colnitialize를 호출하지 않았습니다'라는....

    >

    > 고수님들 왜 그런지 도와 주십시요... 감사합니다...



    Active X가 아닌데...

    uses절에 ActiveX 선언하구...



    CoInitialize(nil); ====> 추가

    try

    Exl := CreateOleObject('Excel.Application'); //엑셀 어플을 열음

    except

    MessageDlg('Excel이 설치되어 있지 않습니다.', MtWarning, [mbok], 0);

    Exit;

    end;

    ...

    ...

    ...

    CoUnInitialize; ------>추가...



    누가 왜그런지 설명좀 해주오....