Q&A

  • Excel에서 파일을 열고싶습니다.
프로그램상에서 Excel 파일을 열고 싶습니다.

Excel프로그램이 Program Files아래에 깔리지 않고 어디에 깔려있던지 간에

Excel파일을 찾아서 열고 싶습니다. 어떻게 해야 하나요...



전에 위와 같은 질문을 올렸더니



try

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

except

on EOleError do begin

ShowMessage('엑셀이 없네유~');

Exit;

end;

end;

위와 같은 답변을 해 주셨습니다. 제가 알고싶은건 Excel.exe가 있는 경로를

알고싶습니다. 아시는분 계시면 꼭 좀 알려주세요!!! *^^*

1  COMMENTS
  • Profile
    박장용 2001.08.06 20:10
    ShellExecute를 쓰시면 윈도우에 등록된 확장자에 연결된 프로그램을 구동 시킬수 있습니다..

    그러니까 탐색기에서 .xls 확장자를 가진 엑셀데이타파일을 더블클릭한것과 같은

    처리를 하는 것입니다..



    아래는 제 소스를 뜯어낸 건데요..

    적당히 수정하시면 될겁니다..

    그럼 수고하세요..



    if ExtractFileExt(SExeName) = '.xls' then begin

    iRtnval := ShellExecute(handle, nil, pchar(SExeName), nil, nil, SW_SHOWNORMAL);

    case iRtnval of

    0 : sMsg :='memory 부족';

    ERROR_FILE_NOT_FOUND : sMsg:='file 없음';

    ERROR_PATH_NOT_FOUND : sMsg:='directory없음';

    SE_ERR_ACCESSDENIED : sMsg:='권한없음';

    SE_ERR_ASSOCINCOMPLETE : sMsg:='권한없음1';

    SE_ERR_DDEBUSY : sMsg:='DDE연결실패';

    SE_ERR_DDEFAIL : sMsg:='DDE연결실패1';

    SE_ERR_DDETIMEOUT : sMsg:='DDE연결실패2';

    SE_ERR_DLLNOTFOUND : sMsg:='library없음';

    SE_ERR_NOASSOC : sMsg:='파일확장자와 연계된 프로그램 없슴';

    SE_ERR_OOM : sMsg:='메모리부족';

    SE_ERR_SHARE : sMsg:='공유실패';

    else sMsg:='기타이유';

    end; //end of case

    end

    else begin

    iRtnval := winexec(pchar(SExeName), SW_SHOW);

    case iRtnval of

    0 : sMsg := '메모리 부족입니다.';

    ERROR_BAD_FORMAT : sMsg := '실행할 수 없는 파일 입니다.';

    ERROR_FILE_NOT_FOUND : sMsg := '파일을 찾을 수 없습니다.';

    ERROR_PATH_NOT_FOUND : sMsg := '경로를 찾을 수 없습니다.';

    else sMsg := '기타오류';

    end; // end of case

    end;





    델초보 wrote:

    > 프로그램상에서 Excel 파일을 열고 싶습니다.

    > Excel프로그램이 Program Files아래에 깔리지 않고 어디에 깔려있던지 간에

    > Excel파일을 찾아서 열고 싶습니다. 어떻게 해야 하나요...

    >

    > 전에 위와 같은 질문을 올렸더니

    >

    > try

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

    > except

    > on EOleError do begin

    > ShowMessage('엑셀이 없네유~');

    > Exit;

    > end;

    > end;

    > 위와 같은 답변을 해 주셨습니다. 제가 알고싶은건 Excel.exe가 있는 경로를

    > 알고싶습니다. 아시는분 계시면 꼭 좀 알려주세요!!! *^^*