2009년 8월 27일 목요일

[펌] C#에서 Excel

안녕하세요 LiveDK 입니다.

이번에 포스트 에서는 닷넷을 통해 엑셀화일을 만들어 보겠습니다.

우선 이번 프로젝트를 만들기위해서 제가 사용하는 프로그램은 다음과 같습니다.

Microsoft Visual Studio 2008 + Microsoft Office Excel 2007

 

처음으로, 윈폼을 하나 생성합니다. 참조추가 를 눌러 COM 탭을 눌러 Microsoft Excel 12.0 Object Library 를 선택하고 확인을 누릅니다.(여기서 저는 Office Excel 2007을 사용하기 때문에 12.0 버전이 나오게 되었습니다.)

 

 

다음으로 코드로 넘어와서 using 을 추가해주어야 합니다. (using 쪽에 아래 코드처럼 대입연산을 통해 하는 과정은 이번에 처음 배웠네요^^)

1.using Excel = Microsoft.Office.Interop.Excel;
2.using System.Reflection;

이제 디자인으로 넘어와 버튼을 하나 추가하고 더블클릭을 통해 버튼 이벤트를 하나만듭니다. 버튼이 눌렀을경우 다음 코드를 실행하게 해보겠습니다.

01.Excel.Application xls;
02.Excel._Workbook wbook;
03.Excel._Worksheet wSheet;
04.try
05.{
06.   xls = new Excel.Application();
07.  
08.   wbook = (Excel._Workbook)(xls.Workbooks.Add(Missing.Value));
09.   wSheet = (Excel._Worksheet)wbook.ActiveSheet;
10.  
11.   wSheet.Cells[1, 1] = "Name";
12.   wSheet.Cells[1, 2] = "Location";
13.  
14.   string[,] saNames = new string[2, 2];
15.  
16.   saNames[0, 0] = "DKLEE";
17.   saNames[0, 1] = "Asan";
18.   saNames[1, 0] = "JHKWON";
19.   saNames[1, 1] = "Seoul";
20.                                  
21.   wSheet.get_Range("A2", "B3").Value2 = saNames;
22.                                                 
23.   xls.Visible = true;
24.   xls.UserControl = true;
25.}
26.catch (System.Exception ex)
27.{
28.   MessageBox.Show(ex.ToString());
29.}

 

내용은 다음과 같습니다. 엑셀 Application 을 하나 생성하고 Workbook , Worksheet 을 만들고 그곳에 데이터를 넣는 코드 입니다.  뭐든지 그렇듯이(?) 알기전까진 어렵지만 알고나면 참간단하다고 느끼내요^^

사실 기능이 너무 많이 있지만 간단하게 데이터를 넣는 부분만 해보았습니다.

너무간단히 포스팅이 끝나서 죄송한 마음이네요.

 

참고한 항목으로는 MSDN 입니다. 이곳을 가시면 더 자세한 내용을 확인해 볼 수 있습니다. 계산 그리고 그래프까지 가능하네요^^

댓글 없음:

댓글 쓰기