public void TryGetCellInHiddenRow()
        {
            Sheet sheet = this.workbook.Sheet("Sheet1");
            Cell  cell  = sheet.Cell(8, 3);

            Assert.IsNull(cell);
        }
        public void TryGetCellInHiddenColumn()
        {
            Sheet sheet = this.workbook.Sheet("Sheet1");
            Cell  cell  = sheet.Cell(2, 5);

            Assert.IsNull(cell);
        }
        public void TryGetNonExistingCellByName()
        {
            Sheet sheet = this.workbook.Sheet("Sheet1");
            Cell  cell  = sheet.Cell("A100");

            Assert.IsNull(cell);
        }
        public void TryGetNonExistingCellByRowIndexAndColumnIndex()
        {
            Sheet sheet = this.workbook.Sheet("Sheet1");
            Cell  cell  = sheet.Cell(100, 100);

            Assert.IsNull(cell);
        }
        public void GetCellByName()
        {
            Sheet sheet = this.workbook.Sheet("Sheet1");
            Cell  cell  = sheet.Cell("B2");

            Assert.AreEqual("Banana", cell.Value);
        }
        public void GetCellByRowAndColumn()
        {
            Sheet sheet = this.workbook.Sheet("Sheet1");
            Cell  cell  = sheet.Cell(2, 2);

            Assert.AreEqual("Banana", cell.Value);
        }
Esempio n. 7
0
        private void MoveRange(MoveData moveData)
        {
            var srcRng = Sheet.Range(moveData.SourceAddress).Unsubscribed();

            _tempSheet.Clear();
            _tempSheet.Cell(1, 1).Value = srcRng;
            Sheet.Range(moveData.TargetAddress).Unsubscribed().Clear();
            Sheet.Cell(moveData.TargetAddress.FirstAddress).Value = _tempSheet.Range(1, 1, srcRng.RowCount(), srcRng.ColumnCount()).Unsubscribed();
            //TODO !!!Sheet.ConditionalFormats.Compress();
        }
Esempio n. 8
0
        private void MoveRange(MoveData moveData)
        {
            var srcRng = Sheet.Range(moveData.SourceAddress);

            _tempSheet.Clear();
            _tempSheet.Cell(1, 1).Value = srcRng;
            srcRng.Clear(XLClearOptions.AllContents);
            Sheet.Range(moveData.TargetAddress).Clear();
            Sheet.Cell(moveData.TargetAddress.FirstAddress).Value = _tempSheet.Range(1, 1, srcRng.RowCount(), srcRng.ColumnCount());
        }
Esempio n. 9
0
        public SubtotalGroup[] ScanForGroups(int groupBy)
        {
            var grRanges = ScanRange(groupBy);
            var result   = new List <SubtotalGroup>(grRanges.Length);
            var rows     = Sheet.Rows(_range.RangeAddress.FirstAddress.RowNumber, _range.RangeAddress.LastAddress.RowNumber);

            if (!rows.Any())
            {
                return(new SubtotalGroup[0]);
            }

            var level = Math.Min(8, rows.Max(r => r.OutlineLevel) + 1);

            foreach (var moveData in grRanges)
            {
                if (moveData.Type != RangeType.DataRange)
                {
                    continue;
                }

                var groupRng = Sheet.Range(moveData.SourceAddress);

                var cuttingGroups = _groups.Select(g => g.Range.RangeAddress.LastAddress)
                                    .Distinct()
                                    .Where(address => moveData.SourceAddress.Contains(address))
                                    .OrderBy(address => address.RowNumber)
                                    .ToArray();
                if (cuttingGroups.Any())
                {
                    var startAddress = moveData.SourceAddress.FirstAddress;
                    foreach (var g in cuttingGroups)
                    {
                        groupRng = Sheet.Range(startAddress, g);
                        result.Add(new SubtotalGroup(level, groupBy, moveData.GroupTitle, groupRng, null, false));
                        startAddress = Sheet.Cell(g).WorksheetRow().RowBelow()
                                       .Cell(startAddress.ColumnNumber).Address;
                    }

                    groupRng = startAddress.RowNumber <= moveData.SourceAddress.LastAddress.RowNumber
                        ? Sheet.Range(startAddress, moveData.SourceAddress.LastAddress)
                        : null;
                }

                if (groupRng != null)
                {
                    result.Add(new SubtotalGroup(level, groupBy, moveData.GroupTitle, groupRng, null, false));
                }
            }

            _groups.AddRange(result);
            return(result.ToArray());
        }