Package org.apache.poi.hssf.util

Examples of org.apache.poi.hssf.util.CellRangeAddress


    if( crB == null) {
      return crA.copy();
    }
   
    return
      new CellRangeAddress(
        lt(crB.getFirstRow(),   crA.getFirstRow())   ?crB.getFirstRow()   :crA.getFirstRow(),
        gt(crB.getLastRow(),    crA.getLastRow())    ?crB.getLastRow()    :crA.getLastRow(),
        lt(crB.getFirstColumn(),crA.getFirstColumn())?crB.getFirstColumn():crA.getFirstColumn(),
        gt(crB.getLastColumn(), crA.getLastColumn()) ?crB.getLastColumn() :crA.getLastColumn()
      );
View Full Code Here


    public void test22720() {
       HSSFWorkbook workBook = new HSSFWorkbook();
       workBook.createSheet("TEST");
       HSSFSheet template = workBook.getSheetAt(0);

       template.addMergedRegion(new CellRangeAddress(0, 1, 0, 2));
       template.addMergedRegion(new CellRangeAddress(1, 2, 0, 2));

       HSSFSheet clone = workBook.cloneSheet(0);
       int originalMerged = template.getNumMergedRegions();
       assertEquals("2 merged regions", 2, originalMerged);
View Full Code Here

    int nRegions = _regions.countRanges();
    for(int i=0; i<nRegions; i++) {
      if (i>0) {
        sb.append(", ");
      }
      CellRangeAddress addr = _regions.getCellRangeAddress(i);
      sb.append('(').append(addr.getFirstRow()).append(',').append(addr.getLastRow());
      sb.append(',').append(addr.getFirstColumn()).append(',').append(addr.getLastColumn()).append(')');
    }
    sb.append("\n");
    sb.append("[/DV]");

    return sb.toString();
View Full Code Here

   * @param lastRow pass -1 for max row index
   * @param lastCol pass -1 for max col index
   */
  private static CellRangeAddress createCR(int firstRow, int lastRow, int firstCol, int lastCol) {
    // max row & max col limit as per BIFF8
    return new CellRangeAddress(
        firstRow,
        lastRow == -1 ? 0xFFFF : lastRow,
        firstCol,
        lastCol == -1 ? 0x00FF : lastCol);
  }
View Full Code Here

  /**
   * Cell ranges like the following are valid
   * =$C:$IV,$B$1:$B$8,$B$10:$B$65536,$A:$A
   */
  public void testCreate() {
    CellRangeAddress cr;
   
    cr = createCR(0, -1, 2, 255); // $C:$IV
    confirmRange(cr, false, true);
    cr = createCR(0, 7, 1, 1); // $B$1:$B$8
   
View Full Code Here

    CFRuleRecord rule1 = CFRuleRecord.create(workbook, "7");
    CFRuleRecord rule2 = CFRuleRecord.create(workbook, ComparisonOperator.BETWEEN, "2", "5");
    CFRuleRecord rule3 = CFRuleRecord.create(workbook, ComparisonOperator.GE, "100", null);
    header.setNumberOfConditionalFormats(3);
    CellRangeAddress[] cellRanges = {
        new CellRangeAddress(0,1,0,0),
        new CellRangeAddress(0,1,2,2),
    };
    header.setCellRanges(cellRanges);
    recs.add(header);
    recs.add(rule1);
    recs.add(rule2);
View Full Code Here

   * Make sure that the CF Header record is properly updated with the number of rules
   */
  public void testNRules() {
    HSSFWorkbook workbook = new HSSFWorkbook();
    CellRangeAddress[] cellRanges = {
        new CellRangeAddress(0,1,0,0),
        new CellRangeAddress(0,1,2,2),
    };
    CFRuleRecord[] rules = {
      CFRuleRecord.create(workbook, "7"),
      CFRuleRecord.create(workbook, ComparisonOperator.BETWEEN, "2", "5"),
    };
View Full Code Here

   /**
    * Make sure when a clone is called, we actually clone it.
    * @throws Exception
    */
   public void testCloneReferences() throws Exception {
      CellRangeAddress[] cras = { new CellRangeAddress(0, 1, 0, 2), };
      MergeCellsRecord merge = new MergeCellsRecord(cras, 0, cras.length);
      MergeCellsRecord clone = (MergeCellsRecord)merge.clone();
     
      assertNotSame("Merged and cloned objects are the same", merge, clone);
     
      CellRangeAddress mergeRegion = merge.getAreaAt(0);
      CellRangeAddress cloneRegion = clone.getAreaAt(0);
      assertNotSame("Should not point to same objects when cloning", mergeRegion, cloneRegion);
      assertEquals("New Clone Row From doesnt match", mergeRegion.getFirstRow(), cloneRegion.getFirstRow());
      assertEquals("New Clone Row To doesnt match", mergeRegion.getLastRow(), cloneRegion.getLastRow());
      assertEquals("New Clone Col From doesnt match", mergeRegion.getFirstColumn(), cloneRegion.getFirstColumn());
      assertEquals("New Clone Col To doesnt match", mergeRegion.getLastColumn(), cloneRegion.getLastColumn());     
     
      assertFalse(merge.getAreaAt(0) == clone.getAreaAt(0));
   }
View Full Code Here

     *
     */
    public void testRemoveMerged() {
        HSSFWorkbook wb = new HSSFWorkbook();
        HSSFSheet sheet = wb.createSheet();
        CellRangeAddress region = new CellRangeAddress(0, 1, 0, 1);
        sheet.addMergedRegion(region);
        region = new CellRangeAddress(1, 2, 0, 1);
        sheet.addMergedRegion(region);

        sheet.removeMergedRegion(0);

        region = sheet.getMergedRegion(0);
        assertEquals("Left over region should be starting at row 1", 1, region.getFirstRow());

        sheet.removeMergedRegion(0);

        assertEquals("there should be no merged regions left!", 0, sheet.getNumMergedRegions());

        //an, add, remove, get(0) would null pointer
        sheet.addMergedRegion(region);
        assertEquals("there should now be one merged region!", 1, sheet.getNumMergedRegions());
        sheet.removeMergedRegion(0);
        assertEquals("there should now be zero merged regions!", 0, sheet.getNumMergedRegions());
        //add it again!
        region.setLastRow(4);

        sheet.addMergedRegion(region);
        assertEquals("there should now be one merged region!", 1, sheet.getNumMergedRegions());

        //should exist now!
        assertTrue("there isn't more than one merged region in there", 1 <= sheet.getNumMergedRegions());
        region = sheet.getMergedRegion(0);
        assertEquals("the merged row to doesnt match the one we put in ", 4, region.getLastRow());
    }
View Full Code Here

      rule1, rule2
    };

    short col = 1;
    CellRangeAddress [] regions = {
      new CellRangeAddress(0, 65535, col, col)
    };

    sheetCF.addConditionalFormatting(regions, cfRules);
    sheetCF.addConditionalFormatting(regions, cfRules);

    // Verification
    assertEquals(2, sheetCF.getNumConditionalFormattings());
    sheetCF.removeConditionalFormatting(1);
    assertEquals(1, sheetCF.getNumConditionalFormattings());
    HSSFConditionalFormatting cf = sheetCF.getConditionalFormattingAt(0);
    assertNotNull(cf);

    regions = cf.getFormattingRanges();
    assertNotNull(regions);
    assertEquals(1, regions.length);
    CellRangeAddress r = regions[0];
    assertEquals(1, r.getFirstColumn());
    assertEquals(1, r.getLastColumn());
    assertEquals(0, r.getFirstRow());
    assertEquals(65535, r.getLastRow());

    assertEquals(2, cf.getNumberOfRules());

    rule1 = cf.getRule(0);
    assertEquals("7",rule1.getFormula1());
View Full Code Here

TOP

Related Classes of org.apache.poi.hssf.util.CellRangeAddress

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.