Bless 2017-05-16 17:11 采纳率: 100%
浏览 2583
已采纳

C# 怎么建立Excel表格?

我想生成个Excel表,手机敲的方法哪里格式不对请见谅,纯自学,无知小白自造工具办公,请多帮忙,谢谢!

//listname是列名,Path是路径
public void new_Excel(string[] listname,string Path)

//要生成Excel表格,不要workbook之类的,不好读,我经常用SQL语句查表格,就是不知道怎么建立。

  • 写回答

5条回答 默认 最新

  • HeRo_OO7 2017-05-17 13:28
    关注

    下面的例子你可以借鉴下,是Access里面数据导出成Excel

            OleDbConnection con = new OleDbConnection();
                        string TABLE=string.Empty;//表名
            try
            {
                SaveFileDialog saveFile = new SaveFileDialog();
                saveFile.Filter = ("Excel 文件(*.xls)|*.xls");//指定文件后缀名为Excel 文件。   
                if (saveFile.ShowDialog() == DialogResult.OK)
                {
                    string filename = saveFile.FileName;
                    if (System.IO.File.Exists(filename))
                    {
                        //System.IO.File.Delete(filename);//如果文件存在删除文件。   
                        MessageBox.Show("存在同名Excel文件,请用户重新命名...");
                    }
                    int index = filename.LastIndexOf("\\");//获取最后一个\的索引   
                    filename = filename.Substring(index + 1);//获取excel名称(新建表的路径相对于SaveFileDialog的路径)   
                    //select * into 建立 新的表。   
                    //[[Excel 8.0;database= excel名].[sheet名] 如果是新建sheet表不能加$,如果向sheet里插入数据要加$.    
                    //sheet最多存储65535条数据。   
                    string sql1 = "select top 65535 ID as 序号ID,NAME as 姓名,AGE as 年龄 into [Excel 8.0;database=" + filename + "].[明细] from ";
                    string sql = sql1 + TABLE;
                    con.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" + Application.StartupPath + "\\data007.mdb";//将数据库放到debug目录下。   
                    OleDbCommand com = new OleDbCommand(sql, con);
                    con.Open();
                    com.ExecuteNonQuery();
    
                    MessageBox.Show("导出数据成功", "导出数据", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                con.Close();
            }  
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 github训练的模型参数无法下载
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式
  • ¥15 关于#python#的问题:功能监听网页