ÇнÀ¸ñÇ¥    1

ÇнÀÁÖÁ¦    1

¿¹½À³»¿ë    1

½Ç½À¹æ¹ý    1

°ú    Á¦    1

Áß¿äÇÔ¼ö    1

¿¢¼¿,¿öµå ÀÚµ¿À¸·Î ¸¸µé±â

ÇнÀ¸ñÇ¥

°èÃøµÈ µ¥ÀÌÅ͸¦ ÀÚµ¿À¸·Î ¿¢¼¿°ú ¿öµå¸¦ ¸¸µç´Ù.

ÇнÀÁÖÁ¦

1.      ¿¢¼¿¿¡ µ¥ÀÌÅ͸¦ ±â·ÏÇϰí íƮ¸¦ ¸¸µç´Ù.

2.      ¿öµå¿¡ µ¥ÀÌÅ͸¦ ±â·ÏÇϰí Å×À̺íÀ» ¸¸µç´Ù.

3.      ¿À¸¥ÂÊ ±×¸²°ú °°ÀÌ ¹öưÀ» ´©¸£¸é ¾Æ·¡¿Í °°ÀÌ ÀÓÀÇ·Î ¸¸µé¾îÁø µ¥ÀÌÅ͸¦ ¿¢¼¿°ú ¿öµå¿¡ ±âÀÔÇÑ´Ù.

 

¿¹½À³»¿ë

 

½Ç½À¹æ¹ý

¸ñ    Â÷

±×¸²°ú °°ÀÌ ÇÁ·ÎÁ§Æ® À̸§À» ¡°ExelWord¡±·Î ÇÏ°í ¡°È®ÀΡ±À»´©¸¨´Ï´Ù.

 

¡°Finish¡±¸¦ ¼±ÅÃÇÕ´Ï´Ù.

 

´ÙÀ½ È­¸éÀÌ ³ª¿À¸é ¡°Excel¡±°ú ¡°Word¡±¸¦ ¼±ÅÃÇÏ¿© ÇÁ·ÎÁ§Æ®¿¡ °ü·Ã Çì´õ ÆÄÀÏÀÌ Æ÷ÇԵǵµ·Ï ÇÕ´Ï´Ù.

 

¹öưÀ» ¸¸µé°í ¡°¼Ó¼º¡±ÀÇ ¡°Caption¡±À» ¡°¿¢¼¿,¿öµå ¹®¼­ ¸¸µé±â¡±·Î ÇÕ´Ï´Ù.

¡°¼Ó¼º¡±ÀÇ ¡°ÄÜÆ®·Ñ À̺¥Æ®¡±¿¡¼­ ¸¶¿ì½º¸¦ Å©¸¯ÇÏ¸é ½ÇÇàµÇ´Â ÇÔ¼ö¸¦ ¸¸µì´Ï´Ù.

¹æ¹ý 1

¡°OnBnClickedButton1()¡± ÇÔ¼ö ¾È¿¡ ´ÙÀ½À» ¼±¾ðÇÑ´Ù.

 

void CExelWordDlg::OnBnClickedButton1()

{

        CNiExcelApplication ExcelApp(true, CNiComInitialize::Multithreaded );

        // ±âÁ¸ÀÇÆÄÀÏÀ»¿¬´Ù.

        //CNiExcelWorkbook m_workBook = ExcelApp.OpenWorkbook("Limit.xsl");        CNiExcelWorkbook m_workBook = ExcelApp.NewWorkbook();    // »õ·Î¿î¿¢¼¿ÆÄÀÏÀ»¸¸µç´Ù.

        CNiExcelWorksheet m_workSheet = m_workBook.GetWorksheet("Sheet1");

 

        // ¿¢¼¿½¬Æ®A¿­°úB¿­¿¡10°³¾¿Àǵ¥ÀÌÅ͸¦¾´´Ù.

        CString s;

        int i;

        CNiExcelCellRange range = m_workSheet.GetRange("A1");

        for(i=1;i<=10;i++) {

                s.Format("A%d",i);

                range = m_workSheet.GetRange(s);

                s.Format("%d",i);

                range.SetCellValue(s);

        }

        for(i=1;i<=10;i++) {

                s.Format("B%d",i);

                range = m_workSheet.GetRange(s);

                s.Format("%d",i*10);

                range.SetCellValue(s);

        }

   

        //¿¢¼¿Ã­Æ®¸¦±×¸°´Ù.

        CNiExcelChart chartSheet = m_workSheet.AddChart(10, 150, 300, 200);

    chartSheet.ChartWizard(1, "A1:B10", NiExcelChartWizardGalleryColumn, NiExcelRows, 1, 1, true, "", "", "Time", "");

           

        // ¿¢¼¿ÆÄÀÏÀ»ÀúÀåÇÑ´Ù.

        // ÆÄÀÏÀºµð·ºÅ丮"³»¹®¼­"¿¡"test.xls"·ÎÀúÀåµÈ´Ù.

        m_workBook.Save("test.xls",m_workBook.FileFormatExcel7);

        m_workBook.Close(m_workBook.SaveChanges);

 

}

 

¹æ¹ý2

¡°ExelWordDlg.h¡±¸¦ ´ÙÀ½°ú °°ÀÌ ÇÁ·Î±×·¥ ÇÑ´Ù.

 

// ExelWordDlg.h : Çì´õÆÄÀÏ

//

 

#pragma once

 

 

// CExelWordDlg ´ëÈ­»óÀÚ

class CExelWordDlg : public CDialog

{

// »ý¼ºÀÔ´Ï´Ù.

public:

        //CExelWordDlg(CWnd* pParent = NULL);    // ¿ø·¡»õ¼ºµÈÇÔ¼ö¸¦¾Æ·¡¿Í°°À̼öÁ¤ÇÑ´Ù.

        CExelWordDlg(bool visible = false, CWnd* pParent = NULL);       

 

// ´ëÈ­»óÀÚµ¥ÀÌÅÍÀÔ´Ï´Ù.

        enum { IDD = IDD_EXELWORD_DIALOG };

 

        protected:

        virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV Áö¿øÀÔ´Ï´Ù.

 

 

// ±¸ÇöÀÔ´Ï´Ù.

protected:

        HICON m_hIcon;

 

        // »ý¼ºµÈ¸Þ½ÃÁö¸ÊÇÔ¼ö

        virtual BOOL OnInitDialog();

        afx_msg void OnSysCommand(UINT nID, LPARAM lParam);

        afx_msg void OnPaint();

        afx_msg HCURSOR OnQueryDragIcon();

        DECLARE_MESSAGE_MAP()

public:

        afx_msg void OnBnClickedButton1();

 

// ¿¢¼¿½ÃÆ®¸¦¸¸µé±âÀ§ÇؾƷ¡¸¦¼±¾ðÇÏ´Ù.

private:

    CNiExcelApplication m_application;

    CNiExcelWorkbook m_workBook;

    CNiExcelWorksheet m_workSheet;

};

 

 

¡°ExelWordDlg.cpp¡± ÇÔ¼öÀÇ »¡°£ ±Û¾¾¸¦ ¼öÁ¤Çϸé ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ°í ¿¢¼¿°ú ¿öµå°¡ ¸¸µé¾î Áø´Ù.

 

// ExelWordDlg.cpp : ±¸ÇöÆÄÀÏ

//

 

#include "stdafx.h"

#include "ExelWord.h"

#include "ExelWordDlg.h"

 

#ifdef _DEBUG

#define new DEBUG_NEW

#endif

 

static CString testTitles [] = {"Test 1", "Test 2", "Test 3", "Test 4", "Test 5"}; // ¿¢¼¿¿­ÀÇÁ¦¸ñ

static CString deviceTitles [] = {"Device 1", "Device 2", "Device 3", "Device 4", "Device 5"};  // ¿¢¼¿ÇàÀÇÁ¦¸ñ

//chartValues : íƮ¼±ÇüÅÂÂ÷·Ê·Î"Column", "Bar", "Line", "XYScatter", "3DSurface", "3DCylinderCol"

static DWORD chartValues [] = {NiExcelChartTypesColumnClustered, NiExcelChartTypesBarClustered, NiExcelChartTypesLine, NiExcelChartTypesXYScatter, NiExcelChartTypes3DSurface, NiExcelChartTypes3DCylinderCol};

static int nChartTypes = 6;

static int nTests = 5;  //¿¢¼¿ÀÇ»ý¼ºµÇ´ÂÇà°ú¿­Àǵ¥ÀÌÅͰ³¼ö

 

// ÀÀ¿ëÇÁ·Î±×·¥Á¤º¸¿¡»ç¿ëµÇ´ÂCAboutDlg ´ëÈ­»óÀÚÀÔ´Ï´Ù.

 

class CAboutDlg : public CDialog

{

public:

        CAboutDlg();

 

// ´ëÈ­»óÀÚµ¥ÀÌÅÍÀÔ´Ï´Ù.

        enum { IDD = IDD_ABOUTBOX };

 

        protected:

        virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV Áö¿øÀÔ´Ï´Ù.

 

// ±¸ÇöÀÔ´Ï´Ù.

protected:

        DECLARE_MESSAGE_MAP()

};

 

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)

{

}

 

void CAboutDlg::DoDataExchange(CDataExchange* pDX)

{

        CDialog::DoDataExchange(pDX);

}

 

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)

END_MESSAGE_MAP()

 

 

// CExelWordDlg ´ëÈ­»óÀÚ

 

//´ÙÀ½ÇÔ¼ö¸¦¾Æ·¡¿Í°°À̼öÁ¤¼±¾ðÇØ¾ß¿¢¼¿Ã­Æ®°¡»ý¼ºµÈ´Ù. óÀ½¿¡´ÂvisibleÀÌfalse·ÎµÇ¾î

//À־À̸¦true·Î¼±¾ðÇϸ鿢¼¿½ÃÆ®°¡³ªÅ¸³­´Ù.

//CExelWordDlg::CExelWordDlg(CWnd* pParent /*=NULL*/)

//      : CDialog(CExelWordDlg::IDD, pParent)

//{

//      m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

//}

 

CExelWordDlg::CExelWordDlg(bool visible, CWnd* pParent)

        :m_application(visible), m_workBook(m_application.NewWorkbook()), m_workSheet(m_workBook.GetWorksheet(1)), CDialog(CExelWordDlg::IDD, pParent)

{

        m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

}

 

void CExelWordDlg::DoDataExchange(CDataExchange* pDX)

{

        CDialog::DoDataExchange(pDX);

}

 

BEGIN_MESSAGE_MAP(CExelWordDlg, CDialog)

        ON_WM_SYSCOMMAND()

        ON_WM_PAINT()

        ON_WM_QUERYDRAGICON()

        //}}AFX_MSG_MAP

        ON_BN_CLICKED(IDC_BUTTON1, &CExelWordDlg::OnBnClickedButton1)

END_MESSAGE_MAP()

 

 

// CExelWordDlg ¸Þ½ÃÁö󸮱â

 

BOOL CExelWordDlg::OnInitDialog()

{

        CDialog::OnInitDialog();

 

        // ½Ã½ºÅÛ¸Þ´º¿¡"Á¤º¸..." ¸Þ´ºÇ׸ñÀ»Ãß°¡ÇÕ´Ï´Ù.

 

        // IDM_ABOUTBOX´Â½Ã½ºÅÛ¸í·É¹üÀ§¿¡ÀÖ¾î¾ßÇÕ´Ï´Ù.

        ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);

        ASSERT(IDM_ABOUTBOX < 0xF000);

 

        CMenu* pSysMenu = GetSystemMenu(FALSE);

        if (pSysMenu != NULL)

        {

                CString strAboutMenu;

                strAboutMenu.LoadString(IDS_ABOUTBOX);

                if (!strAboutMenu.IsEmpty())

                {

                        pSysMenu->AppendMenu(MF_SEPARATOR);

                        pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);

                }

        }

 

        // ÀÌ´ëÈ­»óÀÚÀǾÆÀÌÄÜÀ»¼³Á¤ÇÕ´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥ÀÇÁÖâÀÌ´ëÈ­»óÀÚ°¡¾Æ´Ò°æ¿ì¿¡´Â

        //  ÇÁ·¹ÀÓ¿öÅ©°¡ÀÌÀÛ¾÷À»ÀÚµ¿À¸·Î¼öÇàÇÕ´Ï´Ù.

        SetIcon(m_hIcon, TRUE);                  // Å«¾ÆÀÌÄÜÀ»¼³Á¤ÇÕ´Ï´Ù.

        SetIcon(m_hIcon, FALSE);         // ÀÛÀº¾ÆÀÌÄÜÀ»¼³Á¤ÇÕ´Ï´Ù.

 

        // TODO: ¿©±â¿¡Ãß°¡ÃʱâÈ­ÀÛ¾÷À»Ãß°¡ÇÕ´Ï´Ù.

 

        return TRUE;  // Æ÷Ä¿½º¸¦ÄÁÆ®·Ñ¿¡¼³Á¤ÇÏÁö¾ÊÀ¸¸éTRUE¸¦¹ÝȯÇÕ´Ï´Ù.

}

 

void CExelWordDlg::OnSysCommand(UINT nID, LPARAM lParam)

{

        if ((nID & 0xFFF0) == IDM_ABOUTBOX)

        {

                CAboutDlg dlgAbout;

                dlgAbout.DoModal();

        }

        else

        {

                CDialog::OnSysCommand(nID, lParam);

        }

}

 

// ´ëÈ­»óÀÚ¿¡ÃÖ¼ÒÈ­´ÜÃ߸¦Ãß°¡ÇÒ°æ¿ì¾ÆÀÌÄÜÀ»±×¸®·Á¸é

//  ¾Æ·¡Äڵ尡ÇÊ¿äÇÕ´Ï´Ù. ¹®¼­/ºä¸ðµ¨À»»ç¿ëÇÏ´ÂMFC ÀÀ¿ëÇÁ·Î±×·¥Àǰæ¿ì¿¡´Â

//  ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ÀÌÀÛ¾÷À»ÀÚµ¿À¸·Î¼öÇàÇÕ´Ï´Ù.

 

void CExelWordDlg::OnPaint()

{

        if (IsIconic())

        {

                CPaintDC dc(this); // ±×¸®±â¸¦À§Çѵð¹ÙÀ̽ºÄÁÅØ½ºÆ®

 

                SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);

 

                // Ŭ¶óÀÌ¾ðÆ®»ç°¢Çü¿¡¼­¾ÆÀÌÄÜÀ»°¡¿îµ¥¿¡¸ÂÃä´Ï´Ù.

                int cxIcon = GetSystemMetrics(SM_CXICON);

                int cyIcon = GetSystemMetrics(SM_CYICON);

                CRect rect;

                GetClientRect(&rect);

                int x = (rect.Width() - cxIcon + 1) / 2;

                int y = (rect.Height() - cyIcon + 1) / 2;

 

                // ¾ÆÀÌÄÜÀ»±×¸³´Ï´Ù.

                dc.DrawIcon(x, y, m_hIcon);

        }

        else

        {

                CDialog::OnPaint();

        }

}

 

// »ç¿ëÀÚ°¡ÃÖ¼ÒÈ­µÈâÀ»²ô´Âµ¿¾È¿¡Ä¿¼­°¡Ç¥½ÃµÇµµ·Ï½Ã½ºÅÛ¿¡¼­

//  ÀÌÇÔ¼ö¸¦È£ÃâÇÕ´Ï´Ù.

HCURSOR CExelWordDlg::OnQueryDragIcon()

{

        return static_cast<HCURSOR>(m_hIcon);

}

 

void CExelWordDlg::OnBnClickedButton1()

{

 

    //================   ¿¢¼¿¹®¼­¸¦¸¸µç´Ù.  ===================================

        m_application.Visible = true;    //¼û°ÜÁø¿¢¼¿Ã­Æ®°¡È­¸é¿¡º¸ÀδÙ.

        m_application.WindowState = CNiExcelApplication::WindowStateMaximized;

 

        // ¿¢¼¿½¬Æ®A¿­°úB¿­¿¡10°³¾¿Àǵ¥ÀÌÅ͸¦¾´´Ù.

        CString s;

        int i;

        CNiExcelCellRange range = m_workSheet.GetRange("A1");

        for(i=1;i<=10;i++) {

                s.Format("A%d",i);

                range = m_workSheet.GetRange(s);

                s.Format("%d",i);

                range.SetCellValue(s);

        }

        for(i=1;i<=10;i++) {

                s.Format("B%d",i);

                range = m_workSheet.GetRange(s);

                s.Format("%d",i*10);

                range.SetCellValue(s);

        }

   

        //¿¢¼¿Ã­Æ®¸¦±×¸°´Ù.

        CNiExcelChart chartSheet = m_workSheet.AddChart(10, 150, 300, 200);

    chartSheet.ChartWizard(1, "A1:B10", NiExcelChartWizardGalleryColumn, NiExcelRows, 1, 1, true, "", "", "Time", "");

           

        // íƮÀǸð¾çÀ»¼±À¸·ÎÇÑ´Ù. ´Ù¸¥ÇüÅÂÀÇíƮ´ÂÁ¦ÀÏÀ§¿¡¼±¾ðµÈchartValuesÀ»ÂüÁ¶ÇϽÿÀ.

    //int data;

        //data = (int)(NiExcelChartTypesLine);

    //chartSheet.ChartType = (NiExcelChartTypes)data;

 

        // ¿¢¼¿ÆÄÀÏÀ»ÀúÀåÇÑ´Ù.

        CFileDialog pDlg(FALSE,"xls","",OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"¿¢¼¿ÆÄÀÏ(*.xls)|*.xls|");

        if(pDlg.DoModal()==IDOK)

        {

                CString s=pDlg.GetPathName();

                m_workBook.Save(s,m_workBook.FileFormatExcel7);

                m_workBook.Close(m_workBook.SaveChanges);

        }

 

}

 

 

 

 

 

 

 

óÀ½

°ú    Á¦

 

Áß¿äÇÔ¼ö