首先引用excel库,下面我把代码贴出来。
/// <summary>
/// 将ListView的内容写入Excel表中
/// </summary>
/// <param name="LView">ListView控件</param>
/// <param name="strFilter">内容的标题</param>
public void UWriteListViewToExcel(ListView LView, string strTitle)
{
try
{
Microsoft.Office.Interop.Excel.Application ExcelApp =new Microsoft.Office.Interop.Excel.Application();
object m_objOpt = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Workbooks ExcelBooks = (Microsoft.Office.Interop.Excel.Workbooks)ExcelApp.Workbooks;
Microsoft.Office.Interop.Excel._Workbook ExcelBook = (Microsoft.Office.Interop.Excel._Workbook)(ExcelBooks.Add(m_objOpt));
Microsoft.Office.Interop.Excel._Worksheet ExcelSheet = (Microsoft.Office.Interop.Excel._Worksheet)ExcelBook.ActiveSheet;
//设置标题
ExcelApp.Caption = strTitle;
ExcelSheet.Cells[1, 1] = strTitle;
//写入列名
for (int i = 1; i <= LView.Columns.Count; i++)
{
ExcelSheet.Cells[2, i] = LView.Columns[i-1].Text;
}
//写入内容
for (int i = 3; i < LView.Items.Count + 3; i++)
{
ExcelSheet.Cells[i, 1] = LView.Items[i - 3].Text;
for (int j = 2; j <= LView.Columns.Count; j++)
{
ExcelSheet.Cells[i, j] = LView.Items[i-3].SubItems[j-1].Text;
}
}
//显示Excel
ExcelApp.Visible = true;
}
catch (SystemException e)
{
MessageBox.Show(e.ToString());
}
}