怎么写啊?

解决方案 »

  1.   


    Excel.ApplicationClass xlApp = new Microsoft.Office.Interop.Excel.ApplicationClass();            if (listView1.Items.Count >= 1)
                {
                    if (xlApp == null)
                    {
                        MessageBox.Show("无法创建Excel对象,可能您的机器未安装Excel");
                        return;
                    }                Excel.Workbooks workbooks = xlApp.Workbooks;
                    Excel.Workbook workbook = workbooks.Add(true);
                    Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets[1];
                    xlApp.Visible = true;
                    int rowIdx = 1;//行索引(第一行)
                    //输出表头                for (int i = 0; i < listView1.Columns.Count; i++)
                    {
                        worksheet.Cells[rowIdx, i + 1] = listView1.Columns[i].Text.ToString();
                        ((Excel.Range)worksheet.Cells[rowIdx, i + 1]).Font.Bold = true;
                    }
                    //输出数据行
                    for (int i = 0; i < listView1.Items.Count; i++)
                    {
                        rowIdx++;//指向下一行
                        for (int j = 0; j < listView1.Columns.Count; j++)
                        {
                            if (j == 0)
                            {
                                worksheet.Cells[rowIdx, j + 1] = listView1.Items[i].Text.ToString();
                                ((Excel.Range)worksheet.Cells[rowIdx, j + 1]).HorizontalAlignment = Excel.XlHAlign.xlHAlignLeft;
                            }
                            else
                            {
                                worksheet.Cells[rowIdx, j + 1] = listView1.Items[i].SubItems[j].Text.ToString();
                                ((Excel.Range)worksheet.Cells[rowIdx, j + 1]).HorizontalAlignment = Excel.XlHAlign.xlHAlignLeft;
                            }
                        }
                    }                //保存Excel                string saveFileName = "合同列表.xls";
                    object missing = System.Reflection.Missing.Value;
                    try
                    {
                        workbook.Saved = true;
                        workbook.SaveAs(saveFileName, Excel.XlFileFormat.xlXMLSpreadsheet, missing, missing, false, false, Excel.XlSaveAsAccessMode.xlNoChange, missing, missing, missing, missing, missing);
                        MessageBox.Show("导出成功!");
                    }
                    catch (Exception e1)
                    {
                        MessageBox.Show("导出文件时出错,文件可能正被打开!\n" + e1.Message);
                    }
                    finally
                    {
                        xlApp.Quit();
                        System.GC.Collect();
                    }
                }
                else
                {
                    MessageBox.Show("表格中没有数据导出!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }自己回答自己吧..哎