亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

c#中合并excel表格的方法示例

2020-01-24 00:57:40
字體:
來源:轉載
供稿:網友

有多個結構一樣的Excel,帶復雜表頭需要合并為一個,且去掉多余的表頭數據,可以用COM組件來讀取每個Excel表格的Range來合并到一個新的表格中。樣例如圖

有很多相同格式的表格,合并代碼如下:

using System;using System.Collections.Generic;using System.Text;using System.Reflection;using Excel = Microsoft.Office.Interop.Excel;namespace ConsoleApplication20{   //添加引用-COM-MicroSoft Excel 11.0 Object Libery   class Program  {     static  void Main( string [] args)    {       //M為表格寬度標志(Excel中的第M列為最后一列),3為表頭高度      MergeExcel.DoMerge( new  string []       {        @ "E:/excel/類型A/公司A.xls" ,         @ "E:/excel/類型A/公司B.xls"       },        @ "E:/excel/類型A/合并測試.xls" , "M" , 3);      MergeExcel.DoMerge( new  string []       {        @ "E:/excel/類型B/統計表A.xls" ,         @ "E:/excel/類型B/統計表B.xls"       },        @ "E:/excel/類型B/合并測試.xls" , "I" , 4);    }      }   public  class MergeExcel  {        Excel.Application app = new Microsoft.Office.Interop.Excel.ApplicationClass();     //保存目標的對象    Excel.Workbook bookDest = null ;    Excel.Worksheet sheetDest = null ;     //讀取數據的對象     Excel.Workbook bookSource = null ;    Excel.Worksheet sheetSource = null ;     string [] _sourceFiles = null ;     string _destFile = string .Empty;     string _columnEnd = string .Empty;     int _headerRowCount = 1;     int _currentRowCount = 0;     public MergeExcel( string [] sourceFiles, string destFile, string columnEnd, int headerRowCount)    {            bookDest = (Excel.WorkbookClass)app.Workbooks.Add(Missing.Value);      sheetDest = bookDest.Worksheets.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value) as Excel.Worksheet;      sheetDest.Name = "Data" ;      _sourceFiles = sourceFiles;      _destFile = destFile;      _columnEnd = columnEnd;      _headerRowCount = headerRowCount;    }     /// <summary>     /// 打開工作表     /// </summary>     /// <param name="fileName"></param>     void OpenBook( string fileName)    {      bookSource = app.Workbooks._Open(fileName, Missing.Value, Missing.Value, Missing.Value, Missing.Value        , Missing.Value, Missing.Value, Missing.Value, Missing.Value        , Missing.Value, Missing.Value, Missing.Value, Missing.Value);      sheetSource = bookSource.Worksheets[1] as Excel.Worksheet;    }     /// <summary>     /// 關閉工作表     /// </summary>     void CloseBook()    {      bookSource.Close( false , Missing.Value, Missing.Value);    }     /// <summary>     /// 復制表頭     /// </summary>     void CopyHeader()    {      Excel.Range range = sheetSource.get_Range( "A1" , _columnEnd + _headerRowCount.ToString());      range.Copy(sheetDest.get_Range( "A1" ,Missing.Value));      _currentRowCount += _headerRowCount;    }     /// <summary>     /// 復制數據     /// </summary>     void CopyData()    {       int sheetRowCount = sheetSource.UsedRange.Rows.Count;      Excel.Range range = sheetSource.get_Range( string .Format( "A{0}" , _headerRowCount + 1), _columnEnd + sheetRowCount.ToString());      range.Copy(sheetDest.get_Range( string .Format( "A{0}" , _currentRowCount + 1), Missing.Value));      _currentRowCount += range.Rows.Count;    }     /// <summary>     /// 保存結果     /// </summary>     void Save()    {      bookDest.Saved = true ;      bookDest.SaveCopyAs(_destFile);    }     /// <summary>     /// 退出進程     /// </summary>     void Quit()    {      app.Quit();    }     /// <summary>     /// 合并     /// </summary>     void DoMerge()    {       bool b = false ;       foreach ( string strFile in _sourceFiles)      {        OpenBook(strFile);         if (b == false )        {          CopyHeader();          b = true ;        }        CopyData();        CloseBook();      }      Save();      Quit();    }     /// <summary>     /// 合并表格     /// </summary>     /// <param name="sourceFiles">源文件</param>     /// <param name="destFile">目標文件</param>     /// <param name="columnEnd">最后一列標志</param>     /// <param name="headerRowCount">表頭行數</param>     public  static  void DoMerge( string [] sourceFiles, string destFile, string columnEnd, int headerRowCount)    {       new MergeExcel(sourceFiles, destFile, columnEnd, headerRowCount).DoMerge();    }  }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品国产69国产精品亚洲| 亚洲男人天堂2023| 久久久久久久久久久久av| 久久国产精品偷| 国产福利精品av综合导导航| 97视频在线观看免费高清完整版在线观看| 国产精品久久久久久久av电影| 欧美极品少妇xxxxx| 国产精品第一页在线| 日韩av在线免播放器| 精品久久久久久亚洲精品| 成人亚洲欧美一区二区三区| 欧美夫妻性生活xx| 一区二区欧美久久| 国产精品久久av| 欧美激情在线观看视频| 午夜精品福利视频| 国产成人中文字幕| 亚洲精品一区二区在线| 日韩在线播放视频| 国产欧美 在线欧美| 91免费福利视频| 国产91精品青草社区| 97精品国产97久久久久久| 亚洲精品福利视频| 国产日韩欧美视频在线| 免费97视频在线精品国自产拍| 国产精品va在线播放我和闺蜜| 亚洲欧洲偷拍精品| 欧美不卡视频一区发布| 欧美电影免费观看高清| 97超级碰碰人国产在线观看| 一个人看的www久久| 欧美激情网友自拍| 国产日韩欧美自拍| 午夜精品久久久久久久男人的天堂| 国产精品久久久久久亚洲影视| 日韩中文字幕免费| 国产精品第七影院| 国产亚洲福利一区| 超薄丝袜一区二区| 欧美午夜久久久| 中文字幕亚洲欧美一区二区三区| 亚洲毛片在线观看| 国产精品视频久久久| 成人激情春色网| 欧美中文字幕精品| 久久久亚洲精品视频| 日韩小视频在线观看| 高清亚洲成在人网站天堂| 亚洲情综合五月天| 久久免费视频在线| 欧美精品videossex88| 亚洲高清在线观看| 97在线免费视频| 97视频在线观看免费高清完整版在线观看| 青青草原成人在线视频| 日本sm极度另类视频| 精品国产乱码久久久久久虫虫漫画| 97久久国产精品| 91麻豆国产精品| 亚洲一区中文字幕在线观看| 亚洲欧美制服综合另类| 欧美怡红院视频一区二区三区| 欧美成人一区二区三区电影| 欧美日韩国产在线看| 国产美女搞久久| 午夜精品国产精品大乳美女| 成人在线小视频| 国产精品视频久| 亚洲欧美综合精品久久成人| 精品久久久久久久久久久久| 91亚洲精品一区二区| 欧美日韩国产精品一区二区不卡中文| 精品视频久久久久久久| 中文字幕av日韩| 久久精品2019中文字幕| 成人精品视频99在线观看免费| 97在线看免费观看视频在线观看| 中文日韩电影网站| 国产视频久久久| 97色在线观看| 亚洲美女精品成人在线视频| 国产午夜精品一区二区三区| 亚洲欧美在线免费| 国产亚洲欧美一区| 成人免费观看49www在线观看| 欧美理论电影在线观看| 九九精品在线视频| 中文字幕亚洲欧美| 成人h视频在线观看播放| 中文国产成人精品| 色狠狠av一区二区三区香蕉蜜桃| 亚洲人成五月天| 欧美二区在线播放| 欧美最猛黑人xxxx黑人猛叫黄| 狠狠躁天天躁日日躁欧美| 欧美激情在线一区| 成人黄色片在线| 亚洲福利视频专区| 欧美大尺度激情区在线播放| 国语自产偷拍精品视频偷| 在线电影中文日韩| 日本精品视频网站| 亚洲激情在线观看视频免费| 精品国产鲁一鲁一区二区张丽| 超碰97人人做人人爱少妇| 国产日韩精品入口| 欧美色视频日本高清在线观看| 亚洲免费视频在线观看| 91精品国产综合久久香蕉最新版| 欧美一区深夜视频| 亚洲xxxx做受欧美| 日韩电视剧在线观看免费网站| 在线观看日韩专区| 影音先锋日韩有码| 91精品国产99久久久久久| 亚洲国产精品高清久久久| 97超级碰碰碰久久久| 国产成人精品日本亚洲专区61| 深夜福利一区二区| 亚洲天堂2020| 久久亚洲成人精品| 日韩69视频在线观看| 亚洲在线观看视频网站| 亚洲精品视频播放| 欧美性色xo影院| 亚洲一区www| 亚洲男人天堂久| yellow中文字幕久久| 国产精品极品美女粉嫩高清在线| 久久乐国产精品| 亚洲精品一区二区久| 国产精品一区二区久久国产| 美女扒开尿口让男人操亚洲视频网站| 日本精品视频在线观看| 成人精品久久av网站| 日韩精品在线私人| 亚洲国语精品自产拍在线观看| 国产免费一区二区三区在线观看| 国产精品色悠悠| 亚洲一区中文字幕| 欧美疯狂xxxx大交乱88av| 精品福利一区二区| 色婷婷亚洲mv天堂mv在影片| 国产视频精品在线| 亚洲视频欧美视频| 欧美激情视频网站| 欧美性猛交xxxx偷拍洗澡| 欧美黄色成人网| 日韩hd视频在线观看| 欧洲美女7788成人免费视频| 国产精品色午夜在线观看| 亚洲深夜福利在线| 精品国产31久久久久久| 日韩欧美在线国产| 97欧美精品一区二区三区| 欧美日韩亚洲视频一区| 精品久久久久久国产| 精品福利视频导航| 久久久91精品国产| 国产一区视频在线播放| 精品视频9999| 久久中国妇女中文字幕|