c#生成excel示例sql数据库导出excel
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; }
}
}