电竞比分网-中国电竞赛事及体育赛事平台

分享

Winform導出Excel的列格式設置

 在知識中沉淀 2010-08-13
最近,在做winform項目中遇到了將數(shù)據(jù)添加到excle中,其中也涉及到數(shù)據(jù)的格式問題,在網(wǎng)上搜索了一番,找到一編解決的文章,特保存下來,以備不時之需。

Winform導出Excel的列格式設置

 

在項目中一般都需要將報表數(shù)據(jù)導出到EXCEL中,但經(jīng)常出現(xiàn)導出長串數(shù)據(jù)(如身份證)到EXCEL中后顯示為科學計數(shù)法的格式,或者報表中顯示為001的數(shù)據(jù)導出到Excel后成了1的格式。

下面簡單介紹一下以上問題的解決方法:
protected void GridView2_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
            e.Row.Cells[1].Attributes.Add("style", "vnd.ms-excel.numberformat:@");
    }

1、首先,了解一下excel從web頁面上導出的原理。當我們把這些數(shù)據(jù)發(fā)送到客戶端時,我們想讓客戶端程序(瀏覽器)以excel的格式讀取它,所以把mime類型設為:application/vnd.ms-excel,當excel讀取文件時會以每個cell的格式呈現(xiàn)數(shù)據(jù),如果cell沒有規(guī)定的格式,則excel會以默認的格式去呈現(xiàn)該cell的數(shù)據(jù)。這樣就給我們提供了自定義數(shù)據(jù)格式的空間,當然我們必須使用excel支持的格式。下面就列出常用的一些格式:

1) 文本:vnd.ms-excel.numberformat:@

2) 日期:vnd.ms-excel.numberformat:yyyy/mm/dd

3) 數(shù)字:vnd.ms-excel.numberformat:#,##0.00

4) 貨幣:vnd.ms-excel.numberformat:¥#,##0.00

5) 百分比:vnd.ms-excel.numberformat: #0.00%

 

方法2:

m_objSheet.get_Range("A2", m_objExcel.Cells[nCountRow+1,1]).NumberFormat = "@";

m_objSheet.get_Range("A2", m_objExcel.Cells[nCountRow+1,1]).NumberFormat = "00000";這種方法看似可以,但是點擊單元格,還是int型。

m_objSheet.get_Range("A2", m_objExcel.Cells[nCountRow+1,1]).NumberFormat = Excel.XlParameterDataType.xlParamTypeChar;

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多