|
Interfaces |
설명 |
Application |
전체 Microsoft Excel의 응용 프로그램을 나타냅니다. |
Workbook |
Microsoft Excel 통합 문서를 나타냅니다. |
Worksheet |
워크시트를 나타냅니다. |
Range |
셀, 행, 열, 셀 중 하나 이상의 연속된 블록을 포함하는 세포 중 하나를 선택, 또는 3 - D 범위를 나타냅니다. |
ChartObject |
워크시트에 포함된 차트를 나타냅니다. |
ChartObjects |
지정된 차트 시트, 대화 상자 시트, 또는 Worksheet에있는 모든 개체의 컬렉션 ChartObject |
Chart |
통합 문서에 차트를 나타냅니다. |
- Microsoft.Office.Interop.Excel.Chart의 Properties와 Members
Properties |
설명 |
ChartType |
차트 유형입니다. (_Chart에서 상속). |
Members |
설명 |
SetSourceData |
차트의 원본 데이터 범위를 설정합니다. (_Chart에서 상속). |
예제 – 코드
- 엑셀문서 생성과정
//어플리케이션 생성 Excel.Application excel = new Excel.Application();
//워크북 추가 Excel.Workbook excelWorkbook = excel.Workbooks.Add(true);
// 활성 워크 시트 설정 Excel.Worksheet excelWorksheet = Excel.Worksheet)excelWorkbook.Worksheets.get_Item(1); |
위 과정은 가장 우선적으로 해야 할 엑셀의 문서를 생성하고, 해당 엑셀문서의 워크북을 추가 후 해당워크 북에 활성 워크시트를 설정하는 과정이다. 이 과정까지 하면 우선적으로는 엑셀문서가 생성되며, 데이터를 입력하여 확인 할 수 있다.
- 데이터 입력
excel.Cells[2, 3] = "제품명"; excel.Cells[2, 4] = product; |
이 과정은 엑셀문서에 넣고 싶은 데이터를 셋팅하는 과정이다. 이와 같은 방법으로 셀을 지정하여 해당 셀에 넣고 싶은 데이터를 직접 입력할 수 있다.
- 차트 생성
//차트화할 셀의영역 Excel.Range chartArea = excelWorksheet.get_Range("B5", "D9");
//차트생성 Excel.ChartObjects chart = (Excel.ChartObjects)excelWorksheet.ChartObjects(Type.Missing);
//차트위치 Excel.ChartObject mychart = (Excel.ChartObject)chart.Add(10, 150, 300, 250);
//차트 할당 Excel.Chart chartPage = mychart.Chart;
//차트의 데이터 셋팅 chartPage.SetSourceData(chartArea, Excel.XlRowCol.xlColumns);
//차트의 형태 chartPage.ChartType = Excel.XlChartType.xlCylinderColClustered; |
이 과정은 이미 생성된 엑셀문서의 데이터를 기반으로 차트를 그리는 과정이다. Range의 Get_Ragne부분은 차트화할 데이터의 셀 영역을 지정해주는 것이며, Add(10, 150, 300, 250)은 가로여백10 세로여백 150의 위치에 가로 300 세로 250의 차트를 생성해 주겠다는 것이다.
마지막으로 차트에 들어갈 데이터영역을 차트에 셋팅한 후 Excel.XlChartType. 에서 차트의 형태를 지정해주면 된다. 현재 적용된 그래프는 3차원 세로막대 그래프이다.
Type.Missing의 경우는 Office관련 작업에서 많이 쓰는 것으로 들어갈 value값이 정해지지 않고 애매모호할경우는 Type.Missing를 사용하여 기본값으로 지정한다.
예제 – 결과
- WinForm 화면-
- Excel 문서화 -