Q&A

  • Ole Container에서 Excel 실행하면 아무것도 못하나요..?
아래와 같이 하면 아주 잘 실행이 됩니다.

--------------------------------------------------------------------- var
    V:variant;
begin
    V := CreateOleObject('Excel.Application');
    V.Visible := True;                // 엑셀 프로그램이 보이게 한다.
    V.workbooks.Add('Book1.xls');   // 특정화일을 open한다.
    V.Cells[1, 1].Value := '잘 된다';
---------------------------------------------------------------------

물론 제가 만든 실행 프로그램밖에서 Excel이 따로 실행된 상태입니다.

그런데,

OleContainer 안에서 Excel File을 열면

Coding으로 Excel Data 작업이 불가능하더군요.

--------------------------------------------------------------------- var
   xApp: Variant;

begin
   xApp := OleContainer1.OleObject;
   xApp.Cells[1, 1].Value := 'test';

---------------------------------------------------------------------

위의 코드를 실행하면  
  --> 'Method 'Cells' not supported by automation object'

이렇게 예외가 발생합니다.

제가 Com 쪽을 전혀 몰라서 상식(...)적으로 추측을 해보면

1. Excel 객체??를 OleContainer안에서 불러들인 경우에는

    녀석을 마음대로 제어하는게 불가능한 것이고

2. Excel이 따로 실행된 상태에서는 Com Server - Client 관계가
  
    스무쓰(smooth)하게 잘 돌아가는 게 아닌가 하는데요...

3. 더욱 상식(...)적으로 생각해보면

    내(빌게이츠)가 x억$ 날려서 만든 놈을 딴 프로그램에서 맘대로

    못 가져다 쓰게 만든 것 같기도 합니다...


잘 모르고 하는 소리니 Com 전문가가 혹시 보시면 너무 노여워

말고 답글 좀 남겨주세요...

0  COMMENTS