using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Office.Interop.Excel; using System.Reflection; namespace ListToExcel { class Program { static List<objtype> objs = new List<objtype>(); static void Main(string[] args) { objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); objs.Add(new objtype() { name = "allen", val = "aaa" }); ExportDataToExcel("", "", @"c:\a.xls", "a"); } /// <summary> /// 直接导出数据到excel /// </summary> /// <param name="connectionString">连接字符串</param> /// <param name="sql">查询语句</param> /// <param name="fileName">文件名</param> /// <param name="sheetName">表名</param> static void ExportDataToExcel(string connectionString, string sql, string fileName, string sheetName) { Application app = new Application(); Workbook wb = app.Workbooks.Add(Missing.Value); Worksheet ws = wb.Worksheets.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value) as Worksheet; ws.Name = sheetName; try { int n = 0; for (int i = 1; i < objs.Count; i++) { var excelRange = (Range)ws.Cells[i, 1]; excelRange.Value2 = objs[i].val;//Value2? excelRange = null; } } catch (Exception ex) { string str = ex.Message; } finally { wb.Saved = true; wb.SaveCopyAs(fileName);//保存 app.Quit();//关闭进程 } } } class objtype { public string name { get; set; } public string val { get; set; } } }