国产探花免费观看_亚洲丰满少妇自慰呻吟_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;
                        }
                           
                    }       
                }
            }
        }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 弋阳县| 濮阳市| 鱼台县| 三门峡市| 马关县| 盖州市| 扬州市| 古丈县| 阿瓦提县| 项城市| 沅江市| 龙口市| 梁河县| 卫辉市| 昌图县| 金堂县| 临江市| 龙游县| 湘阴县| 德格县| 安乡县| 鄂托克旗| 肇庆市| 虹口区| 荔波县| 大方县| 祥云县| 永丰县| 两当县| 泸州市| 九龙县| 马尔康县| 乌鲁木齐市| 历史| 庄浪县| 夹江县| 定结县| 明水县| 汨罗市| 宾川县| 博湖县|