VS2005 C#下,想读取sql数据库某个表中的数据,真接以EXCEL表格形式显示在窗体中!该如何操作呢?求大家帮帮忙!

解决方案 »

  1.   

    先用SQL SELECT 语句读取出来,然后 用DATAGIRD 绑定数据源,就行了
      

  2.   

     DataTable dt=new DataTable();
      string sql=" select * from Table:; SqlConnection conn=new  SqlConnection("server=.;database= ;uid=sa;pwd=123");
      SqlDataAdapter sda = new SqlDataAdapter(sql, con);
      sda.Fill(dt);
      dataGridView1.DataSource = dt;   //OK
    还是你要将数据导出到XLS中去?
      

  3.   

    数据不想在dataGridView中显示!直接显示在EXCEL文件中!
      

  4.   

    目前还没有这个功能,也没必要这么做啊,
    直接导出Excle
      

  5.   

    将数据取到数据源后,在用方法导出到EXCEL把,网上这样的例子很多。
      

  6.   

    用SQL SELECT 语句读取出来
      

  7.   

    如果有EXECL控件的话,不过现在貌似没有这样的控件
    把EXECL嵌到你的程序中去?这个貌似又太高深了。。
      

  8.   

    直接显示在Excel中好像是不行的,不过可以采用一个变通的方法
    先制作一个excel的模板文件,将数据表中的信息导入到excel中,然后在程序中执行Process.Start()方法,直接打开你所保存的excel文件,这样就可以直接把excel本身程序给启动了
      

  9.   

    直接显示在Excel中好像是不行的,不过可以采用一个变通的方法 
    1.首先读取sql的数据显示到DataGridView中,
    2.将数据然后导入到excel中。第一步的代码不用了吧。
    第二步的代码:        //保存到Excel
            public void SaveDataTableToExcel(System.Data.DataTable excelTable,string filePath)
            {
                Microsoft.Office.Interop.Excel.Application app = 
                    new Microsoft.Office.Interop.Excel.ApplicationClass();
                try
                {
                    //让后台执行设置为不可见
                    app.Visible = false;
                    //新增加一个工作簿
                    Workbook wBook = app.Workbooks.Add(true);
                    //如果要打开已有的工作簿,则使用下面的注释语句
                    // Workbook wBook = app.Workbooks.Open(@"C:\YourPath\YourWorkbook.xls",
                    //    missing, missing, missing, missing, missing, missing, missing,
                    //    missing, missing, missing, missing, missing,missing, missing);                //取得一个工作表
                    //如果打开了已有的工作簿,也可以这样获取工作表Worksheet wSheet = wBook.ActiveSheet as Worksheet
                    Worksheet wSheet = wBook.Worksheets[1] as Worksheet;
                    if (excelTable.Rows.Count > 0)
                    {
                        int row = 0;
                        row = excelTable.Rows.Count;
                        int col = excelTable.Columns.Count;
                        allsize = row;                    for (int i = 0; i < row; i++)
                        {
                            succeesize++;
                            prograsssize++;
                            for (int j = 0; j < col; j++)
                            {
                                string str = excelTable.Rows[i][j].ToString();
                                wSheet.Cells[i + 1, j + 1] = str;
                            }
                            SetMessageText();
                        }
                    }                int size = excelTable.Columns.Count;
                    for (int i = 0; i < size; i++)
                    {
                        wSheet.Cells[1, 1 + i] = excelTable.Columns[i].ColumnName;
                    }                //设置禁止弹出保存和覆盖的询问提示框
                    app.DisplayAlerts = false;
                    app.AlertBeforeOverwriting = false;
                    //保存工作簿
                    wBook.Save();
                    //保存excel文件
                    app.Save(filePath + "\\导出excel.xls");
                }
                catch(Exception err)
                {
                    MessageBox.Show("导入Excel出错!错误原因:"+ err.Message, "错误信息",
                        MessageBoxButtons.OK, MessageBoxIcon.Information);
                }     
                finally
                {
                    //确保Excel进程关闭
                    app.Quit();
                    app = null;
                }
                SetCancelUse();
            }
      

  10.   

    10楼的大致正确。第一步从数据库中取数据,然后根据10楼提供的代码作些改动就可以实现了。
    需要修改的地方是app.Visible参数(或类似参数,记得不是很清楚)要置为true,并确保显示过程中不执行Quit()方法,否则代码执行后就是直接在后台生成一个excel文件,不会在活动桌面为用户显示数据。
      

  11.   

    动作1:把取出的数据写入指定的EXCEL中。在程序中把这个EXCEL文件加到项目。
    动作2:添加一个空页面,在Pageload里加上
            我刚写的:
            Response.ContentType = "Application/vnd.ms-excel";//X-msexcel
            string FilePath = MapPath("合同管理改善0908.xls");
            Response.WriteFile(FilePath);
            Response.End();
    这样,调这个页面,就把EXCEL加到嵌套在你的页面里了。把数据导出到EXCEL,满简单,
    就是要多出一个提示保存。不是很直观。