Examples of NameRecord


Examples of org.apache.poi.hssf.record.NameRecord

   * @param sheetIndex Zero-based sheet index (0 Represents the first sheet to keep consistent with java)
   * @return String Null if no print area has been defined
   */     
  public String getPrintArea(int sheetIndex)
  {
    NameRecord name = workbook.getSpecificBuiltinRecord(NameRecord.BUILTIN_PRINT_AREA, sheetIndex+1);   
    if (name == null) return null;
    //adding one here because 0 indicates a global named region; doesnt make sense for print areas
  
    return name.getAreaReference(workbook);
  }   
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

   
    /** creates a new named range and add it to the model
     * @return named range high level
     */   
    public HSSFName createName(){
        NameRecord nameRecord = workbook.createName();
       
        HSSFName newName = new HSSFName(workbook, nameRecord);
       
        names.add(newName);
       
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

    HSSFRow row = sheet.createRow(0);
    HSSFCell cellA1 = row.createCell(0);
    cellA1.setCellFormula("SUM(Is_Multicar_Vehicle)");

    // Set the complex flag - POI doesn't usually manipulate this flag
    NameRecord nameRec = TestHSSFName.getNameRecord(definedName);
    nameRec.setOptionFlag((short)0x10); // 0x10 -> complex

    HSSFFormulaEvaluator hsf = new HSSFFormulaEvaluator(wb);
    CellValue value;
    try {
      value = hsf.evaluate(cellA1);
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

    HSSFName definedName = wb.createName();
    definedName.setNameName("foo");
    definedName.setRefersToFormula("Sheet1!B2");

    // Set the complex flag - POI doesn't usually manipulate this flag
    NameRecord nameRec = TestHSSFName.getNameRecord(definedName);
    nameRec.setOptionFlag((short)0x10); // 0x10 -> complex

    Ptg[] result;
    try {
      result = HSSFFormulaParser.parse("1+foo", wb);
    } catch (FormulaParseException e) {
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

        // Check all names fit within range, and use
        //  DeletedArea3DPtg
        Workbook w = wb.getWorkbook();
        for(int i=0; i<w.getNumNames(); i++) {
            NameRecord r = w.getNameRecord(i);
            assertTrue(r.getSheetNumber() <= wb.getNumberOfSheets());

            Ptg[] nd = r.getNameDefinition();
            assertEquals(1, nd.length);
            assertTrue(nd[0] instanceof DeletedArea3DPtg);
        }


        // Delete the 2nd sheet
        wb.removeSheetAt(1);


        // Re-check
        assertEquals(1, wb.getNumberOfNames());
        assertEquals(2, wb.getNumberOfSheets());

        for(int i=0; i<w.getNumNames(); i++) {
            NameRecord r = w.getNameRecord(i);
            assertTrue(r.getSheetNumber() <= wb.getNumberOfSheets());

            Ptg[] nd = r.getNameDefinition();
            assertEquals(1, nd.length);
            assertTrue(nd[0] instanceof DeletedArea3DPtg);
        }


        // Save and re-load
        wb = writeOutAndReadBack(wb);
        w = wb.getWorkbook();

        assertEquals(1, wb.getNumberOfNames());
        assertEquals(2, wb.getNumberOfSheets());

        for(int i=0; i<w.getNumNames(); i++) {
            NameRecord r = w.getNameRecord(i);
            assertTrue(r.getSheetNumber() <= wb.getNumberOfSheets());

            Ptg[] nd = r.getNameDefinition();
            assertEquals(1, nd.length);
            assertTrue(nd[0] instanceof DeletedArea3DPtg);
        }
    }
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

        // However, the sheet index must be adjusted, or
        //  excel will break. (Sheet index is either 0 for
        //  global, or 1 based index to sheet)
        int sheetNum1Based = sheetIndex + 1;
        for(int i=0; i<getNumNames(); i++) {
            NameRecord nr = getNameRecord(i);

            if(nr.getSheetNumber() == sheetNum1Based) {
                // Excel re-writes these to point to no sheet
                nr.setSheetNumber(0);
            } else if(nr.getSheetNumber() > sheetNum1Based) {
                // Bump down by one, so still points
                //  at the same sheet
                nr.setSheetNumber(nr.getSheetNumber()-1);
            }
        }
    }
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

    /** creates new name
     * @return new name record
     */
    public NameRecord createName(){
        return addName(new NameRecord());
    }
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

    public NameRecord createBuiltInName(byte builtInName, int sheetNumber) {
        if (sheetNumber < 0 || sheetNumber+1 > Short.MAX_VALUE) {
            throw new IllegalArgumentException("Sheet number ["+sheetNumber+"]is not valid ");
        }

        NameRecord name = new NameRecord(builtInName, sheetNumber);

        while(linkTable.nameAlreadyExists(name)) {
            throw new RuntimeException("Builtin (" + builtInName
                    + ") already exists for sheet (" + sheetNumber + ")");
        }
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

    /**
     * Updates named ranges due to moving of cells
     */
    public void updateNamesAfterCellShift(FormulaShifter shifter) {
        for (int i = 0 ; i < getNumNames() ; ++i){
            NameRecord nr = getNameRecord(i);
            Ptg[] ptgs = nr.getNameDefinition();
            if (shifter.adjustFormula(ptgs, nr.getSheetNumber())) {
                nr.setNameDefinition(ptgs);
            }
        }
    }
View Full Code Here

Examples of org.apache.poi.hssf.record.NameRecord

   * @param sheetIndex  the 0-based index of the sheet this formula belongs to.
   * The sheet index is required to resolve sheet-level names. <code>-1</code> means workbook-global names
    */
  public EvaluationName getName(String name, int sheetIndex) {
    for(int i=0; i < _iBook.getNumNames(); i++) {
      NameRecord nr = _iBook.getNameRecord(i);
      if (nr.getSheetNumber() == sheetIndex+1 && name.equalsIgnoreCase(nr.getNameText())) {
        return new Name(nr, i);
      }
    }
    return sheetIndex == -1 ? null : getName(name, -1);
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.