Package org.apache.poi.hssf.usermodel
Class HSSFEvaluationWorkbook
- java.lang.Object
-
- org.apache.poi.hssf.usermodel.HSSFEvaluationWorkbook
-
- All Implemented Interfaces:
EvaluationWorkbook
,FormulaParsingWorkbook
,FormulaRenderingWorkbook
@Internal public final class HSSFEvaluationWorkbook extends java.lang.Object implements FormulaRenderingWorkbook, EvaluationWorkbook, FormulaParsingWorkbook
Internal POI use only
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.poi.ss.formula.EvaluationWorkbook
EvaluationWorkbook.ExternalName, EvaluationWorkbook.ExternalSheet, EvaluationWorkbook.ExternalSheetRange
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clearAllCachedResultValues()
Propagated fromWorkbookEvaluator.clearAllCachedResultValues()
to clear locally cached data.int
convertFromExternSheetIndex(int externSheetIndex)
HSSF Only - convert an external sheet index to an internal sheet index, for an external-style reference to one of this workbook's own sheetsstatic HSSFEvaluationWorkbook
create(HSSFWorkbook book)
HSSFName
createName()
Return the underlying workbookPtg
get3DReferencePtg(AreaReference areaRef, SheetIdentifier sheet)
Produce the appropriate Ptg for a 3d area referencePtg
get3DReferencePtg(CellReference cr, SheetIdentifier sheet)
Produce the appropriate Ptg for a 3d cell referenceEvaluationWorkbook.ExternalName
getExternalName(int externSheetIndex, int externNameIndex)
HSSF Only - fetch the external-style name detailsEvaluationWorkbook.ExternalName
getExternalName(java.lang.String nameName, java.lang.String sheetName, int externalWorkbookNumber)
XSSF Only - fetch the external-style name detailsEvaluationWorkbook.ExternalSheet
getExternalSheet(int externSheetIndex)
HSSF Only - fetch the external-style sheet detailsEvaluationWorkbook.ExternalSheet
getExternalSheet(java.lang.String firstSheetName, java.lang.String lastSheetName, int externalWorkbookNumber)
XSSF Only - fetch the external-style sheet detailsint
getExternalSheetIndex(java.lang.String sheetName)
gets the externSheet index for a sheet from this workbookint
getExternalSheetIndex(java.lang.String workbookName, java.lang.String sheetName)
gets the externSheet index for a sheet from an external workbookPtg[]
getFormulaTokens(EvaluationCell evalCell)
EvaluationName
getName(java.lang.String name, int sheetIndex)
Lookup a named range by its name.EvaluationName
getName(NamePtg namePtg)
java.lang.String
getNameText(NamePtg namePtg)
NameXPtg
getNameXPtg(java.lang.String name, SheetIdentifier sheet)
Return an external name (named range, function, user-defined function) PtgEvaluationSheet
getSheet(int sheetIndex)
java.lang.String
getSheetFirstNameByExternSheet(int externSheetIndex)
int
getSheetIndex(java.lang.String sheetName)
Finds a sheet index by case insensitive name.int
getSheetIndex(EvaluationSheet evalSheet)
java.lang.String
getSheetLastNameByExternSheet(int externSheetIndex)
java.lang.String
getSheetName(int sheetIndex)
SpreadsheetVersion
getSpreadsheetVersion()
Returns an enum holding spreadhseet properties specific to an Excel version ( max column and row numbers, max arguments to a function, etc.)Table
getTable(java.lang.String name)
XSSF Only - gets a table that exists in the worksheetUDFFinder
getUDFFinder()
java.lang.String
resolveNameXText(NameXPtg n)
-
-
-
Method Detail
-
create
public static HSSFEvaluationWorkbook create(HSSFWorkbook book)
-
clearAllCachedResultValues
public void clearAllCachedResultValues()
Description copied from interface:EvaluationWorkbook
Propagated fromWorkbookEvaluator.clearAllCachedResultValues()
to clear locally cached data. Implementations must call the same method on all referencedEvaluationSheet
instances, as well as clearing local caches.- Specified by:
clearAllCachedResultValues
in interfaceEvaluationWorkbook
- See Also:
WorkbookEvaluator.clearAllCachedResultValues()
-
createName
public HSSFName createName()
Description copied from interface:FormulaParsingWorkbook
Return the underlying workbook- Specified by:
createName
in interfaceFormulaParsingWorkbook
-
getExternalSheetIndex
public int getExternalSheetIndex(java.lang.String sheetName)
Description copied from interface:FormulaParsingWorkbook
gets the externSheet index for a sheet from this workbook- Specified by:
getExternalSheetIndex
in interfaceFormulaParsingWorkbook
-
getExternalSheetIndex
public int getExternalSheetIndex(java.lang.String workbookName, java.lang.String sheetName)
Description copied from interface:FormulaParsingWorkbook
gets the externSheet index for a sheet from an external workbook- Specified by:
getExternalSheetIndex
in interfaceFormulaParsingWorkbook
- Parameters:
workbookName
- e.g. "Budget.xls"sheetName
- a name of a sheet in that workbook
-
get3DReferencePtg
public Ptg get3DReferencePtg(CellReference cr, SheetIdentifier sheet)
Description copied from interface:FormulaParsingWorkbook
Produce the appropriate Ptg for a 3d cell reference- Specified by:
get3DReferencePtg
in interfaceFormulaParsingWorkbook
-
get3DReferencePtg
public Ptg get3DReferencePtg(AreaReference areaRef, SheetIdentifier sheet)
Description copied from interface:FormulaParsingWorkbook
Produce the appropriate Ptg for a 3d area reference- Specified by:
get3DReferencePtg
in interfaceFormulaParsingWorkbook
-
getNameXPtg
public NameXPtg getNameXPtg(java.lang.String name, SheetIdentifier sheet)
Return an external name (named range, function, user-defined function) Ptg- Specified by:
getNameXPtg
in interfaceFormulaParsingWorkbook
-
getName
public EvaluationName getName(java.lang.String name, int sheetIndex)
Lookup a named range by its name.- Specified by:
getName
in interfaceEvaluationWorkbook
- Specified by:
getName
in interfaceFormulaParsingWorkbook
- Parameters:
name
- the name to searchsheetIndex
- the 0-based index of the sheet this formula belongs to. The sheet index is required to resolve sheet-level names.-1
means workbook-global names
-
getSheetIndex
public int getSheetIndex(EvaluationSheet evalSheet)
- Specified by:
getSheetIndex
in interfaceEvaluationWorkbook
- Returns:
- -1 if the specified sheet is from a different book
-
getSheetIndex
public int getSheetIndex(java.lang.String sheetName)
Description copied from interface:EvaluationWorkbook
Finds a sheet index by case insensitive name.- Specified by:
getSheetIndex
in interfaceEvaluationWorkbook
- Returns:
- the index of the sheet matching the specified name. -1 if not found
-
getSheetName
public java.lang.String getSheetName(int sheetIndex)
- Specified by:
getSheetName
in interfaceEvaluationWorkbook
-
getSheet
public EvaluationSheet getSheet(int sheetIndex)
- Specified by:
getSheet
in interfaceEvaluationWorkbook
-
convertFromExternSheetIndex
public int convertFromExternSheetIndex(int externSheetIndex)
Description copied from interface:EvaluationWorkbook
HSSF Only - convert an external sheet index to an internal sheet index, for an external-style reference to one of this workbook's own sheets- Specified by:
convertFromExternSheetIndex
in interfaceEvaluationWorkbook
-
getExternalSheet
public EvaluationWorkbook.ExternalSheet getExternalSheet(int externSheetIndex)
Description copied from interface:EvaluationWorkbook
HSSF Only - fetch the external-style sheet detailsReturn will have no workbook set if it's actually in our own workbook
- Specified by:
getExternalSheet
in interfaceEvaluationWorkbook
- Specified by:
getExternalSheet
in interfaceFormulaRenderingWorkbook
- Returns:
null
if externSheetIndex refers to a sheet inside the current workbook
-
getExternalSheet
public EvaluationWorkbook.ExternalSheet getExternalSheet(java.lang.String firstSheetName, java.lang.String lastSheetName, int externalWorkbookNumber)
Description copied from interface:EvaluationWorkbook
XSSF Only - fetch the external-style sheet detailsReturn will have no workbook set if it's actually in our own workbook
- Specified by:
getExternalSheet
in interfaceEvaluationWorkbook
-
getExternalName
public EvaluationWorkbook.ExternalName getExternalName(int externSheetIndex, int externNameIndex)
Description copied from interface:EvaluationWorkbook
HSSF Only - fetch the external-style name details- Specified by:
getExternalName
in interfaceEvaluationWorkbook
-
getExternalName
public EvaluationWorkbook.ExternalName getExternalName(java.lang.String nameName, java.lang.String sheetName, int externalWorkbookNumber)
Description copied from interface:EvaluationWorkbook
XSSF Only - fetch the external-style name details- Specified by:
getExternalName
in interfaceEvaluationWorkbook
-
resolveNameXText
public java.lang.String resolveNameXText(NameXPtg n)
- Specified by:
resolveNameXText
in interfaceEvaluationWorkbook
- Specified by:
resolveNameXText
in interfaceFormulaRenderingWorkbook
-
getSheetFirstNameByExternSheet
public java.lang.String getSheetFirstNameByExternSheet(int externSheetIndex)
- Specified by:
getSheetFirstNameByExternSheet
in interfaceFormulaRenderingWorkbook
- Returns:
- the name of the (first) sheet referred to by the given external sheet index
-
getSheetLastNameByExternSheet
public java.lang.String getSheetLastNameByExternSheet(int externSheetIndex)
- Specified by:
getSheetLastNameByExternSheet
in interfaceFormulaRenderingWorkbook
- Returns:
- the name of the (last) sheet referred to by the given external sheet index
-
getNameText
public java.lang.String getNameText(NamePtg namePtg)
- Specified by:
getNameText
in interfaceFormulaRenderingWorkbook
-
getName
public EvaluationName getName(NamePtg namePtg)
- Specified by:
getName
in interfaceEvaluationWorkbook
-
getFormulaTokens
public Ptg[] getFormulaTokens(EvaluationCell evalCell)
- Specified by:
getFormulaTokens
in interfaceEvaluationWorkbook
-
getUDFFinder
public UDFFinder getUDFFinder()
- Specified by:
getUDFFinder
in interfaceEvaluationWorkbook
-
getSpreadsheetVersion
public SpreadsheetVersion getSpreadsheetVersion()
Description copied from interface:FormulaParsingWorkbook
Returns an enum holding spreadhseet properties specific to an Excel version ( max column and row numbers, max arguments to a function, etc.)- Specified by:
getSpreadsheetVersion
in interfaceEvaluationWorkbook
- Specified by:
getSpreadsheetVersion
in interfaceFormulaParsingWorkbook
-
getTable
public Table getTable(java.lang.String name)
Description copied from interface:FormulaParsingWorkbook
XSSF Only - gets a table that exists in the worksheet- Specified by:
getTable
in interfaceFormulaParsingWorkbook
-
-