|
강민규 님이 쓰신 글 :
: 제가 출력 결과물을 엑셀과 워드로 저장할려고 합니다.
: 그림과 표로 구성하여 저장하고 싶은데 TExcelApplication과 TWordApplication 등의
: MS Office 컴포넌트에 대한 자료가 없어 이렇게 질문을 올립니다.
: 사용법이나 사용법이 있는 사이트를 아시는 분은 답변 좀 해주세요!
: 그리고 C++ Builder에 관련된 괜찮은 외국 사이트나 뉴스그룹 있으면 소개 좀
: 부탁드립니다.
구체적인 질문을 작서하신다면 더 좋은 답변이 달리겠죠^^?
TWordApplication 은 사용해보질 않았지만...
아마도 TExcelApplication 과는 크게 다르지 않을것 같군요...
제가 엑셀을 사용하는 방법을 간략하게 적으면 다음과 같습니다.
엑셀은 3개의 컴포넌트를 사용합니다.
ExcelApplication, 엑셀 프로세스에 관한 기능들입니다.
ExcelWorkbooks, 엑셀 파일 단위에 대한 기능들이 있습니다.
ExcelSheets, 실제로 데이터를 작성하는 시트입니다.
이 3가지를 적절히 사용해서 엑셀파일을 생성해야 합니다.
우선 실행 순서는 다음과 같습니다...
ExcelApplication 을 Connect 하시고.
ExcelWorkbooks 를 ConnectTo 함수로 해당 파일 을 접근합니다.
파일이 존재 하지 않으면 SaveAs로 생성해서 처리 해주어야 합니다.
그다음
ExcelWorkbooks 에서 열어두신 파일에서
원하는 시트를 선택해서 접근하시면...
반은 다 되었습니다...
이제 Sheet 에 있는 메소드들을 십분 활용하시면 됩니다.
여기 포럼에도 많이 나와있는 팁이지만,
Excel에서 제공하는 Mecro 기능을 이용하시면,
상수값이라든지, 명령문이라든지 쉽게 파악하실수 있습니다.
예를들어
범위에 대한 정렬을 선택할 경우
아래의 값들을 찾아서 적기가 수월합니다.
xlLeft =-4131
xlCenter = -4108
xlRight = -4152
xlBottom = -4107
xlTop = -4160
xlFill = 5
이런 값들을 추출할수가 있죠
그래서 이렇게 적용합니다.
ExcelWs->get_Range(GetCellPos(X1,Y1), GetCellPos(X2,Y2))->set_HorizontalAlignment((TVariant) xlCenter );
그리고 엑셀은... 범위를 지정한 작업이 대부분 입니다.
Merge, BorderAround, Alignment, 등등...
범위는
"A1:B3"
와 같이... 흔히 엑셀에서 사용하는 형식이 사용되어집니다.
위의 GetCellPos(x,y)는 제가 직접 작성한 함수입니다...
정수로된 좌표를 넘기면 A1이나 IV45와 같은...형식의 스트링으로 만들어 줍니다.
이런식으로 접근하시면 엑셀 굉장히 간단하게 사용할수 있습니다.
차트삽입은 더욱 간단하구요...
나중에 모르시는 부분이 있으면 글 남겨주세요
제가 아는건 알려드리고
모르는건 같이 연구해 보자구요 ^^;;
그럼 즐프 하세요~
|