C#에서 ListView로 쌓아둔 내용(?)을 ... Excel로 저장하기 위한 소스 코드입니다.
Excel로 저장하기 위해서 처리한 Method만 올려 놓았습니다.
(실행 파일 및 스크린 샷은 첨부 하지 않았습니다.)
private void btnSaveExcel_Click(object sender, EventArgs e) { if (btnOpen.Visible == false) { MessageBox.Show("저장전 Port를 Close하세요!"); } else { //엑셀 저장하기 saveFileDialog1.CreatePrompt = true; saveFileDialog1.OverwritePrompt = true; saveFileDialog1.DefaultExt = "*.xls"; saveFileDialog1.Filter = "Excel Files (*.xls)|*.xls"; saveFileDialog1.InitialDirectory = "C:\\"; DialogResult result = saveFileDialog1.ShowDialog(); if (result == DialogResult.OK) { try { object missingType = Type.Missing; Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbook excelBook = excelApp.Workbooks.Add(missingType); Microsoft.Office.Interop.Excel.Worksheet excelWorksheet = (Microsoft.Office.Interop.Excel.Worksheet)excelBook.Worksheets.Add(missingType, missingType, missingType, missingType); excelApp.Visible = false; for (int i = 0; i < lstView.Items.Count; i++) { for (int j = 0; j < lstView.Columns.Count; j++) { if (i == 0) { excelWorksheet.Cells[1, j + 1] = this.lstView.Columns[j].Text; } excelWorksheet.Cells[i + 2, j + 1] = this.lstView.Items[i].SubItems[j].Text; } } excelBook.SaveAs(@saveFileDialog1.FileName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, missingType, missingType, missingType, missingType, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, missingType, missingType, missingType, missingType, missingType); excelApp.Visible = true; System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp); } catch { MessageBox.Show("Excel 파일 저장중 에러가 발생했습니다."); } } } }