国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#中將ListView中數(shù)據(jù)導(dǎo)出到Excel的實(shí)例方法

2020-01-24 03:25:21
字體:
供稿:網(wǎng)友

添加方法:選擇項(xiàng)目->引用->右擊“添加引用”->選擇COM 找到上面組件―>點(diǎn)擊“確定”。
實(shí)現(xiàn)代碼如下:

復(fù)制代碼 代碼如下:

    private void 導(dǎo)出數(shù)據(jù)_Click(object sender, EventArgs e) 
    {     
    ExportToExecl(); 
    }  
    /// <summary>   
    /// 執(zhí)行導(dǎo)出數(shù)據(jù)
    /// </summary>
    public void ExportToExecl()
    {     
    System.Windows.Forms.SaveFileDialog sfd = new SaveFileDialog();  
    sfd.DefaultExt = "xls";   
    sfd.Filter = "Excel文件(*.xls)|*.xls";     
    if (sfd.ShowDialog() == DialogResult.OK)  
    {          
    DoExport(this.lstPostion, sfd.FileName); 
    }   
    }   
    /// <summary>
    /// 具體導(dǎo)出的方法
    /// </summary>  
    /// <param name="listView">ListView</param>  
    /// <param name="strFileName">導(dǎo)出到的文件名</param>  
    private void DoExport(ListView listView, string strFileName)   
    {      
    int rowNum = listView.Items.Count;  
    int columnNum = listView.Items[0].SubItems.Count;
    int rowIndex = 1;      
    int columnIndex = 0;      
    if (rowNum == 0 || string.IsNullOrEmpty(strFileName))  
    {           
    return;      
    }      
    if (rowNum > 0)   
    {         
    Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.ApplicationClass(); 
    if (xlApp == null)       
    {            
    MessageBox.Show("無法創(chuàng)建excel對象,可能您的系統(tǒng)沒有安裝excel"); 
    return;         
    }         
    xlApp.DefaultFilePath = "";   
    xlApp.DisplayAlerts = true;       
    xlApp.SheetsInNewWorkbook = 1;     
    Microsoft.Office.Interop.Excel.Workbook xlBook = xlApp.Workbooks.Add(true);  
    //將ListView的列名導(dǎo)入Excel表第一行           
    foreach (ColumnHeader dc in listView.Columns)  
    {            
    columnIndex++;     
    xlApp.Cells[rowIndex, columnIndex] = dc.Text;  
    }           
    //將ListView中的數(shù)據(jù)導(dǎo)入Excel中       
    for (int i = 0; i < rowNum; i++)     
    {             
    rowIndex++;     
    columnIndex = 0;   
    for (int j = 0; j < columnNum; j++)   
    {                   
    columnIndex++;             
    //注意這個(gè)在導(dǎo)出的時(shí)候加了“/t” 的目的就是避免導(dǎo)出的數(shù)據(jù)顯示為科學(xué)計(jì)數(shù)法。可以放在每行的首尾。    
    xlApp.Cells[rowIndex, columnIndex] = Convert.ToString(listView.Items[i].SubItems[j].Text) + "/t";     
    }        
    }       
    //例外需要說明的是用strFileName,Excel.XlFileFormat.xlExcel9795保存方式時(shí) 當(dāng)你的Excel版本不是95、97 而是2003、2007 時(shí)導(dǎo)出的時(shí)候會報(bào)一個(gè)錯(cuò)誤:異常來自 HRESULT:0x800A03EC。 解決辦法就是換成strFileName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal。          
    xlBook.SaveAs(strFileName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);  
    xlApp = null;          
    xlBook = null;       
    MessageBox.Show("OK");      
    }  
    }

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 平顶山市| 惠来县| 辰溪县| 隆昌县| 顺义区| 开原市| 华亭县| 莆田市| 仪征市| 长武县| 广昌县| 闸北区| 板桥市| 客服| 墨脱县| 台江县| 理塘县| 焦作市| 宜兴市| 蒲江县| 新宁县| 河南省| 荃湾区| 四会市| 刚察县| 河北区| 海原县| 阿拉善右旗| 盐津县| 荆门市| 台江县| 新化县| 乌兰察布市| 信丰县| 锦州市| 大港区| 奉新县| 綦江县| 广水市| 陆河县| 奉新县|