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

首頁 > 開發 > 綜合 > 正文

C#實現在Excel中將連續多列相同數據項合并

2024-07-21 02:29:01
字體:
來源:轉載
供稿:網友

  效果圖如下:

代碼如下:

/**//// <summary>
        /// 合并工作表中指定行數和列數數據相同的單元格
        /// </summary>
        /// <param name="sheetindex">工作表索引</param>
        /// <param name="beginrowindex">開始行索引</param>
        /// <param name="begincolumnindex">開始列索引</param>
        /// <param name="rowcount">要合并的行數</param>
        /// <param name="columncount">要合并的列數</param>
        public void mergeworksheet(int sheetindex,int beginrowindex,int begincolumnindex,int rowcount,int columncount)
        {

            //檢查參數
            if ( columncount < 1 || rowcount < 1)
                return ;

            for(int col=0;col<columncount;col++)
            {
                int mark = 0;            //標記比較數據中第一條記錄位置
                int mergecount = 1;        //相同記錄數,即要合并的行數
                string text = "";
               
                for(int row=0;row<rowcount;row++)
                {
                    string prvname = "";
                    string nextname = "";

                    //最后一行不用比較
                    if( row + 1 < rowcount)       
                    {
                        for(int n=0;n<=col;n++)
                        {
                            range = (excel.range)worksheet.cells[row + beginrowindex,n + begincolumnindex];
                            range = (excel.range)range.mergearea.get_item(1,1);
                            text = range.text.tostring();
                            prvname = prvname + text;

                            range = (excel.range)worksheet.cells[row + 1 + beginrowindex,n + begincolumnindex];
                            range = (excel.range)range.mergearea.get_item(1,1);
                            nextname = nextname + range.text.tostring();

                        }
                           
                        if(prvname == nextname)
                        {
                            mergecount++;

                            if(row == rowcount - 2)
                            {
                                this.mergecells(sheetindex,beginrowindex + mark,begincolumnindex + col,beginrowindex + mark + mergecount - 1,begincolumnindex + col,text);
                            }
                        }
                        else
                        {
                            this.mergecells(sheetindex,beginrowindex + mark,begincolumnindex + col,beginrowindex + mark + mergecount - 1,begincolumnindex + col,text);
                            mergecount = 1;
                            mark = row + 1;
                        }
                           
                    }       
                }
            }
        }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南宫市| 米易县| 松阳县| 禄丰县| 贺州市| 溧水县| 西畴县| 溧阳市| 河源市| 古田县| 临洮县| 随州市| 额济纳旗| 商城县| 潼南县| 师宗县| 汶上县| 夏邑县| 乾安县| 手机| 班戈县| 色达县| 寿光市| 溧水县| 隆化县| 合阳县| 钟祥市| 涿鹿县| 犍为县| 盐城市| 孟村| 易门县| 鞍山市| 兰坪| 宜丰县| 达日县| 抚宁县| 辽源市| 舒城县| 天长市| 德令哈市|