用C#创建Excel表最简单的方法是什么?

用C#创建Excel表最简单的方法是什么?,第1张

概述我有一些表格数据,我想变成一个Excel表. 可用软件: > .NET 4(C#) > Excel 2010(使用Excel API可以) >我不喜欢使用任何第三方图书馆 有关数据的信息: >几百万行 > 5列,所有字符串(非常简单和规则的表结构) >在我的脚本中,我正在使用一个嵌套的List数据结构,但是我可以改变它 >脚本的性能并不重要 在线搜索会给出很多结果,我是否会使用OleDb,ADO 我有一些表格数据,我想变成一个Excel表.

可用软件:

> .NET 4(C#)
> Excel 2010(使用Excel API可以)
>我不喜欢使用任何第三方图书馆

有关数据的信息:

>几百万行
> 5列,所有字符串(非常简单和规则的表结构)
>在我的脚本中,我正在使用一个嵌套的List数据结构,但是我可以改变它
>脚本的性能并不重要

在线搜索会给出很多结果,我是否会使用oleDb,ADO Recordset或其他内容感到困惑.这些技术中的一些似乎对我的场景似乎是过度的,有些似乎可能已经过时了.

最简单的方法是什么?

编辑:这是一个一次性脚本,我打算从我的桌面上运行.

解决方法 尊重您的要求,以避免第三方工具和使用COM对象,我将如何做.

>添加对项目的引用:Com对象
Microsoft Excel 11.0.
>模块顶部添加:

using Microsoft.Office.Interop.Excel;

>添加如下事件逻辑:

private voID DoThatExcelThing(){    ApplicationClass myExcel;    try    {        myExcel = Getobject(,"Excel.Application")    }    catch (Exception ex)    {        myExcel = New ApplicationClass()    }    myExcel.Visible = true;    Workbook wb1 = myExcel.Workbooks.Add("");    Worksheet ws1 = (Worksheet)wb1.Worksheets[1];    //Read the connection string from App.Config    string strConn = System.Configuration.ConfigurationManager.ConnectionStrings["NewConnString"].ConnectionString;    //Open a connection to the database    sqlConnection myConn = new sqlConnection();    myConn.ConnectionString = strConn;    myConn.open();    //Establish the query    sqlCommand myCmd = new sqlCommand("select * from employees",myConn);    sqlDataReader myRdr = myCmd.ExecuteReader();    //Read the data and put into the spreadsheet.    int j = 3;    while (myRdr.Read())    {        for (int i=0 ; i < myRdr.FIEldCount; i++)        {            ws1.Cells[j,i+1] = myRdr[i].ToString();        }        j++;    }    //Populate the column names    for (int i = 0; i < myRdr.FIEldCount ; i++)    {        ws1.Cells[2,i+1] = myRdr.Getname(i);    }    myRdr.Close();    myConn.Close();    //Add some formatting    Range rng1 = ws1.get_Range("A1","H1");    rng1.Font.Bold = true;    rng1.Font.colorIndex = 3;    rng1.HorizontalAlignment = XlHAlign.xlHAlignCenter;    Range rng2 = ws1.get_Range("A2","H50");    rng2.WrapText = false;    rng2.EntireColumn.autoFit();    //Add a header row    ws1.get_Range("A1","H1").EntireRow.Insert(XlinsertShiftDirection.xlShiftDown,Missing.Value);    ws1.Cells[1,1] = "Employee Contact List";    Range rng3 = ws1.get_Range("A1","H1");    rng3.Merge(Missing.Value);    rng3.Font.Size = 16;    rng3.Font.colorIndex = 3;    rng3.Font.Underline = true;    rng3.Font.Bold = true;    rng3.VerticalAlignment = XlVAlign.xlVAlignCenter;    //Save and close    string strfilename = String.Format("Employees{0}.xlsx",DateTime.Now.ToString("HHmmss"));    System.IO.file.Delete(strfilename);    wb1.SaveAs(strfilename,XlfileFormat.xlWorkbookDefault,Missing.Value,XlSaveAsAccessMode.xlExclusive,false,Missing.Value);    myExcel.Quit();}
总结

以上是内存溢出为你收集整理的用C#创建Excel表最简单的方法是什么?全部内容,希望文章能够帮你解决用C#创建Excel表最简单的方法是什么?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1244124.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存