C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[4630] Re:Re:대단히 감사합니다................
정재만 [] 3562 읽음    2000-12-18 00:00
심한 가뭄에 단비가 내리듯 정말 감사합니다......
씨빌더경우에 자료찾기가 매우 어렵군요.......
저는 보통 델파이 자료를 찾은뒤에 컨버팅하는 방식을 많이 사용합니다.(얼마나 자료가 없어면)


박지훈.임프 님이 쓰신 글 :
: 정재만 님이 쓰신 글 :
: : 델파이에서 나온 예제대로 하니 컴파일 에러가 나네요
: : 누가좀 가르쳐 주세요,.,
: :
:
:
: 임펠리테리입니다.
:
: C++Builder 4 언리시드에 보시면 챕터15가 엑셀에 대한 내용이며, 아주 친절하고 자세히 설명되어 있습니다. 원서지만 사보시는 것이 좋겠구요. 이 챕터에 있는 예제 중 세번째 것이 엑셀로 데이터를 보내는 것입니다. 스트링그리드에서 읽어서 보내는, 원하시는 그대로는 아닙니다만 약간만 응용하시면 금방 고치실 수 있을 겁니다.
:
: //헤더파일입니다
: //---------------------------------------------------------------------------
: #ifndef MainH
: #define MainH
: //---------------------------------------------------------------------------
: #include <Classes.hpp>
: #include <Controls.hpp>
: #include <StdCtrls.hpp>
: #include <Forms.hpp>
: //---------------------------------------------------------------------------
: class TForm1 : public TForm
: {
: __published:    // IDE-managed Components
:         TButton *Button1;
:         void __fastcall Button1Click(TObject *Sender);
:         void __fastcall FormDestroy(TObject *Sender);
: private:    // User declarations
:         TCOM_Application m_XLApp;       // Excel's Application Object
:         WorksheetPtr     m_Worksheet;   // A Worksheet object
:         RangePtr         m_Cells;       // A Range object of Cells
:         RangePtr         m_Columns;     // A Range object of Columns
:        
:         void    InsertData();
:         void    ChangeColumns();
:         void    HandleRange();       
: public:        // User declarations
:         __fastcall TForm1(TComponent* Owner);
: };
: //---------------------------------------------------------------------------
: extern PACKAGE TForm1 *Form1;
: //---------------------------------------------------------------------------
: #endif
:
:
:
: // cpp 파일입니다.
: //---------------------------------------------------------------------------
: #include <vcl.h>
: #include "Excel_TLB.h"
: #pragma hdrstop
:
: #include "main.h"
: #include <graphics.hpp>
:
: //---------------------------------------------------------------------------
: #pragma package(smart_init)
: #pragma resource "*.dfm"
: TForm1 *Form1;
: //---------------------------------------------------------------------------
: __fastcall TForm1::TForm1(TComponent* Owner)
:         : TForm(Owner)
: {
: }
: //---------------------------------------------------------------------------
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:   // Create/Launch EXCEL
:   if (!m_XLApp)
:     m_XLApp = CoApplication_::Create();
:   // Make EXCEL visible
:   m_XLApp->set_Visible(0, true);
:   // Add a Worksheet
:   m_XLApp->Workbooks->Add(xlWBATWorksheet);
:   // Get the newly added Worksheet object
:   m_Worksheet = m_XLApp->Workbooks->get_Item(1)->Worksheets->get_Item(1);
:   // Set it's name to "C++Builder Data";
:   m_Worksheet->Name = WideString("C++Builder Data");
:   // Call routines to insert Data
:   InsertData();
:   HandleRange();
:   ChangeColumns();
: }
: //---------------------------------------------------------------------------
: void __fastcall TForm1::FormDestroy(TObject *Sender)
: {
:   if (m_XLApp)
:   {
:     m_XLApp->set_DisplayAlerts(0, false);
:     m_XLApp->Quit();
:   }
: }
: //---------------------------------------------------------------------------
: void TForm1::InsertData()
: {
:   int i;
:   for (i=1; i<=10; i++)
:     m_Worksheet->Cells->set__Default(i, 1, i);
:   m_Worksheet->Cells->set__Default(i, 1, "=SUM(A1:A10)");
: }
:
: void TForm1::HandleRange()
: {
:   RangePtr range = m_Worksheet->get_Range("C1:F25");
:   range->Formula = "=RAND()";
:   range->Columns->Interior->ColorIndex = 3;
:   range->Borders->LineStyle = xlContinuous;
: }
:
: void TForm1::ChangeColumns()
: {
:   // Get interface to first column
:   RangePtr firstCol = m_Worksheet->Columns->get__Default(1);
:   firstCol->ColumnWidth = 20;               // Set width
:   firstCol->Font->Bold = true;              // Set BOLD font
:   firstCol->Font->Italic = true;            // Enable Italic
:   firstCol->Font->Color = clBlue;           // Tweak color
: }
:
: 주의할 점: 만약 사용하시는 빌더의 버전이 4나 3라면, 직접 엑셀 ActiveX를 임포트해야만 합니다. 빌더 5에서는 기본적으로 임포트되어 있습니다.
:
: 그럼 참고하시길...

+ -

관련 글 리스트
4606 [질문] 빌더4에서 그리드 데이터를 엑셀로 보내는방법? 정재만 3061 2000/12/15
4612     Re:[질문] 빌더4에서 그리드 데이터를 엑셀로 보내는방법? 박지훈.임프 4669 2000/12/15
4630         Re:Re:대단히 감사합니다................ 정재만 3562 2000/12/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.