using System.Reflection;
Function()
{
Excel.Application app = new Excel.Application();
if (app == null)
{
MessageBox.Show("Failed to Load Excel,Please Ensure Excel Is Installed !", "!Excel Error");
return;
}
app.Visible = false;
Excel.Workbooks wbs = app.Workbooks;
Excel.Workbook wb = wbs.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Worksheet ws = (Excel.Worksheet)wb.Worksheets[1];
Excel.Range r = ws.get_Range("A1", "M1");
//-----------------------------header---------------------------------------------------
object[] objHeader = new object[this.listView1.Columns.Count];
//------------------------write list items to excel--------------------------------------
r.Value2 = objHeader;
if (listView1.Items.Count > 0)
{
r = ws.get_Range("A1", Missing.Value);
object[,] objData = new Object[this.listView1.Items.Count, listView1.Columns.Count];
foreach (ListViewItem lvi in listView1.Items)
{
objData[lvi.Index, 0] = lvi.Text;
for (int i = 1; i < listView1.Columns.Count; i++)
{
if (i >= lvi.SubItems.Count)
objData[lvi.Index, i] = "";
else
objData[lvi.Index, i] = lvi.SubItems[i].Text;
}
}//end foreach
r = r.get_Resize(listView1.Items.Count, listView1.Columns.Count);
r.Value2 = objData;
r.EntireColumn.AutoFit();
}//end if
app.Visible = true;
}
ListView 到 Excel
最新推荐文章于 2022-06-14 23:08:24 发布