public void WriteExcel()
{
// 참조에 Micocoft.Office.Interop.Excel 추가 -> Excel 2003임.
// 네임스페이스에 다음 추가 "using Excel = Microsoft.Office.Interop.Excel;"
// 자주 사용하는 Type.Missing 미리 정의 해놓음.
object TypMissing = Type.Missing;
// Excel Application 정의
Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
Excel.Workbook _workbook = null;
// 파일이 존재 하면 열고, 없으면 새로 만듬.
if (File.Exists(@"c:\Test.xls"))
{
_workbook = ExcelApp.Workbooks.Open(@"c:\Test.xls", TypMissing, TypMissing, TypMissing, TypMissing,
TypMissing, TypMissing,
TypMissing, TypMissing, TypMissing, TypMissing, TypMissing, TypMissing, TypMissing, TypMissing);
}
else
{
// Add Work Book
_workbook = ExcelApp.Workbooks.Add(Type.Missing);
// Save Excel File
_workbook.SaveAs(@"c:\Test.xls", Excel.XlFileFormat.xlWorkbookNormal, TypMissing, TypMissing,
TypMissing, TypMissing, Excel.XlSaveAsAccessMode.xlNoChange,
TypMissing, TypMissing, TypMissing, TypMissing, TypMissing);
}
// 읽어들인 Excel에서Sheet1을 가져옴. item 이름이 정확 해야함.
Excel.Worksheet Sheet = (Excel.Worksheet)_workbook.Worksheets.get_Item("Sheet1");
Excel.Range Range_ = Sheet.get_Range("A1", Type.Missing);
Sheet.Cells[1, 1] = "이름";
Sheet.Cells[1, 2] = "전화번호";
Sheet.Cells[1, 3] = "주소";
//Sheet.Rows.AutoFit();
Sheet.Columns.AutoFit(); // 글자 크기에 맞게 셀 크기를 자동으로 조절.
//Range_.Rows.AutoFit();
//Range_.Columns.AutoFit();
_workbook.Save();
ExcelApp.Workbooks.Close(); // 별효과 없음.
ExcelApp.Quit(); // 별효과 없음.
// 강제로 Excel Porcess종료하기.
Process[] ExCel = Process.GetProcessesByName("EXCEL");
if (ExCel.Count() != 0)
{
MessageBox.Show("Detect EXCEL");
ExCel[0].Kill();
}
}
|
2015년 5월 11일 월요일
C# Excel Read and Write(C#에서 엑셀 읽고 쓰기)
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기