ListView导出到Excel的方法
public static void ExpToExcel(ListView listviewname)
{
if (listviewname.Items.Count == 0) return;
Excel.Application excel = new Excel.Application();
Excel.Workbooks workbooks = excel.Workbooks;
Excel.Workbook workbook = workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Sheets worksheets = workbook.Worksheets;
Excel.Worksheet sheet = (Excel.Worksheet) worksheets.get_Item(1);
excel.Visible = true;
Excel.Range range;
excel.Cells.Select();
excel.Cells.RowHeight = 30;
excel.Cells.Font.Size = 10;
excel.Cells.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;
int rowPos = 2;
range = excel.get_Range(sheet.Cells[rowPos,1],sheet.Cells[rowPos,1]);
range.Select();
for(int i=1;i<=listviewname.Columns.Count;i++)
{
range = excel.get_Range(sheet.Cells[rowPos,i],sheet.Cells[rowPos,i]);
range.Borders.LineStyle = 1;
range.Font.Name = "华文仿宋";
range.Font.Size = 16;
range.Font.Bold = true;
range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;
range.ColumnWidth = 18;
sheet.Cells[rowPos,i] = listviewname.Columns[i-1].Text.ToString();
}
rowPos++;
foreach(ListViewItem item in listviewname.Items)
{
for(int i=1;i<=listviewname.Columns.Count;++i)
{
range = excel.get_Range(sheet.Cells[rowPos,i],sheet.Cells[rowPos,i]);
range.Borders.LineStyle = 1;
range.Font.Name = "华文仿宋";
range.Font.Size = 12;
range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;
sheet.Cells[rowPos,i] = item.SubItems[i-1].Text;
}
rowPos++;
}
}
作者:返回主页 linux运维-loring 出处:http://www.cnblogs.com/zlf344242525/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果文中有什么错误,欢迎指出。以免更多的人被误导。 |