/// <summary>
        /// 获取sheet中指定区域包含合并区域的信息列表
        /// </summary>
        /// <param name="sheet"></param>
        /// <param name="range"></param>
        /// <returns></returns>
        public static IList <MergedRegionInfo> GetMergedRegionInfos(this ISheet sheet, CellRange range)
        {
            var regionInfoList = new List <MergedRegionInfo>();

            for (int i = 0; i < sheet.NumMergedRegions; i++)
            {
                var mergedRegion = sheet.GetMergedRegion(i);
                var regionRange  = new CellRange(mergedRegion.FirstColumn, mergedRegion.FirstRow, mergedRegion.LastColumn,
                                                 mergedRegion.LastRow);
                if (range.Include(regionRange))
                {
                    regionInfoList.Add(new MergedRegionInfo(i, regionRange));
                }
            }

            return(regionInfoList);
        }
Exemple #2
0
 public static bool Include(this CellRange range, int startColumnIndex, int startRowIndex, int endColumnIndex, int endRowIndex)
 {
     return(range.Include(new CellRange(startColumnIndex, startRowIndex, endColumnIndex, endRowIndex)));
 }