作者 主題: 資料庫查詢結果的EXCEL, 欲自訂其格式  (閱讀 4030 次)

0 會員 與 1 訪客 正在閱讀本文。

redjack

  • 活潑的大學生
  • ***
  • 文章數: 426
    • 檢視個人資料
各位大大好,請教一下:

小弟參考了這個網站:http://tw.myblog.yahoo.com/jw!xm1jOHyLGQfGU.bTjILU2g--/article?mid=1572&prev=1602&l=f&fid=29
做出能把每次交易結果匯出到EXCEL 讓人下載的功能。

但現在客戶希望sheet 裡面的欄位,可以依據性質不同而有不同的對齊方式,比方說銀行名稱,客戶代號就置中,而金額就是靠右。

下面是相關的CODE:

     public DataSet SQL_Retrive(string Sql)
    {
        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings[SQLConnectionString].ConnectionString);
        SqlDataAdapter adp = new SqlDataAdapter(Sql, conn);
        DataSet ds = new DataSet();
        adp.Fill(ds);
        adp.Dispose();
        conn.Close();
        conn.Dispose();
        return ds;
    }

   protected void b_Download_Click(object sender, EventArgs e)
    {

        String fileSql = SqlDataSource1.SelectCommand.ToString();
        DataSet ds = dataProcessor.SQL_Retrive(fileSql);  // 在WEB.CONFIG要有相關的資料庫連結

        Response.Clear();
        Response.AddHeader("content-disposition", "attachment;filename=test.xls");//excel檔名
        Response.ContentType = "application/vnd.ms-excel";
        Response.Charset = "";
        System.IO.StringWriter sw = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw);
        DataGrid dg = new DataGrid();
        dg.DataSource = ds;
        dg.DataBind();
        dg.RenderControl(htw);
        Response.Write(sw.ToString());
        Response.End();
    }

現在的問題是:要怎麼樣做才能在下載之前把表格屬性給調整好?
我目前是想說:應該是去調整b_Download_Click中ds 吧?
不過看了:http://msdn.microsoft.com/zh-tw/library/system.data.dataset(v=vs.80).aspx
真的看不懂要怎麼調整?

請教一下各位前輩我該怎麼做?可以給我一些提示嗎 ^^"
或者說我的想法一開始就不恰當(或不對),該用別的方法?

謝謝大家
Knowledge is Power

redjack

  • 活潑的大學生
  • ***
  • 文章數: 426
    • 檢視個人資料
回覆: 資料庫查詢結果的EXCEL, 欲自訂其格式
« 回覆 #1 於: 2011-03-05 21:23 »
剛剛參考了一些網站,好像用dataset 比較難達成?
有自訂格式的大多用這個方法來做:http://www.dotblogs.com.tw/jimmyyu/archive/2009/06/21/8922.aspx

先來研究這篇看看:http://giga0066.pixnet.net/blog/post/29823527
Knowledge is Power

micmic3

  • 俺是博士!
  • *****
  • 文章數: 1692
    • 檢視個人資料
回覆: 資料庫查詢結果的EXCEL, 欲自訂其格式
« 回覆 #2 於: 2011-03-07 10:07 »
我都做成 html 的 table 存成 .xls

redjack

  • 活潑的大學生
  • ***
  • 文章數: 426
    • 檢視個人資料
回覆: 資料庫查詢結果的EXCEL, 欲自訂其格式
« 回覆 #3 於: 2011-03-09 21:16 »
嗯嗯,小弟也用這種做法了。
比較簡單,對於格式與內容也有很高的彈性並且容易修改。

謝謝micmic3 大大的分享 ^_^
Knowledge is Power