Пример #1
0
        public SheetRangeGroup Select(Func <int, bool> indexSelector)
        {
            IEnumerable <SheetRange> select()
            {
                for (int index = Range.Start.Row; index <= Range.End.Row; index++)
                {
                    if (indexSelector(index))
                    {
                        yield return(new SheetRange(Range.Sheet, (Range.Start.Row + index, Range.Start.Col), (Range.Start.Row + index, Range.End.Col)));
                    }
                }
            }

            return(new SheetRangeGroup(select()));
        }
Пример #2
0
        public SheetRange this[int?startOffset, int?endOffset]
        {
            get
            {
                if (startOffset is null)
                {
                    startOffset = 0;
                }
                if (endOffset is null)
                {
                    endOffset = Range.RowLength - 1;
                }

                return(new SheetRange(Range.Sheet, (Range.Start.Row + startOffset.Value, Range.Start.Col), (Range.Start.Row + endOffset.Value, Range.End.Col)));
            }
        }
Пример #3
0
        public SheetRange this[int?startOffset, int?endOffset]
        {
            get
            {
                if (startOffset is null)
                {
                    startOffset = 0;
                }
                if (endOffset is null)
                {
                    endOffset = Range.ColumnLengh - 1;
                }

                return(new SheetRange(Range.Sheet, (Range.Start.Row, Range.Start.Col + startOffset.Value), (Range.End.Row, Range.Start.Col + endOffset.Value)));
            }
        }
Пример #4
0
 public SheetRangeRowSelector(SheetRange range)
 {
     Range = range;
 }
Пример #5
0
 public SheetRangeColumnSelector(SheetRange range)
 {
     Range = range;
 }