java.lang.String |
formatAsString()
Example return values:
Result | Comment
A1Cell reference without sheet
Sheet1!A1Standard sheet name
'O''Brien''s Sales'!A1' Sheet name with special characters
|
java.lang.String[] |
getCellRefParts()
Returns the three parts of the cell reference, the
Sheet name (or null if none supplied), the 1 based
row number, and the A based column letter. |
short |
getCol()
|
int |
getRow()
|
java.lang.String |
getSheetName()
|
boolean |
isColAbsolute()
|
boolean |
isRowAbsolute()
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
CellReference
public CellReference(java.lang.String cellRef)
- Create an cell ref from a string representation. Sheet names containing special characters should be
delimited and escaped as per normal syntax rules for formulas.
CellReference
public CellReference(int pRow,
int pCol)
CellReference
public CellReference(int pRow,
short pCol)
CellReference
public CellReference(int pRow,
int pCol,
boolean pAbsRow,
boolean pAbsCol)
CellReference
public CellReference(java.lang.String pSheetName,
int pRow,
int pCol,
boolean pAbsRow,
boolean pAbsCol)
getRow
public int getRow()
getCol
public short getCol()
isRowAbsolute
public boolean isRowAbsolute()
isColAbsolute
public boolean isColAbsolute()
getSheetName
public java.lang.String getSheetName()
- Returns:
- possibly
null if this is a 2D reference. Special characters are not
escaped or delimited
classifyCellReference
public static int classifyCellReference(java.lang.String str)
- Classifies an identifier as either a simple (2D) cell reference or a named range name
- Returns:
- one of the values from NameType
cellReferenceIsWithinRange
public static boolean cellReferenceIsWithinRange(java.lang.String colStr,
java.lang.String rowStr)
- Used to decide whether a name of the form "[A-Z]*[0-9]*" that appears in a formula can be
interpreted as a cell reference. Names of that form can be also used for sheets and/or
named ranges, and in those circumstances, the question of whether the potential cell
reference is valid (in range) becomes important.
Note - that the maximum sheet size varies across Excel versions:
Version | File Format |
Last Column | Last Row |
97-2003 | BIFF8 | "IV" (2^8) | 65536 (2^14) |
2007 | BIFF12 | "XFD" (2^14) | 1048576 (2^20) |
POI currently targets BIFF8 (Excel 97-2003), so the following behaviour can be observed for
this method:
Input |
Result |
"A", "1" | true |
"a", "111" | true |
"A", "65536" | true |
"A", "65537" | false |
"iv", "1" | true |
"IW", "1" | false |
"AAA", "1" | false |
"a", "111" | true |
"Sheet", "1" | false |
- Parameters:
colStr - a string of only letter charactersrowStr - a string of only digit characters
- Returns:
true if the row and col parameters are within range of a BIFF8 spreadsheet.
convertNumToColString
protected static java.lang.String convertNumToColString(int col)
- Takes in a 0-based base-10 column and returns a ALPHA-26
representation.
eg column #3 -> D
formatAsString
public java.lang.String formatAsString()
- Example return values:
Result | Comment |
A1 | Cell reference without sheet |
Sheet1!A1 | Standard sheet name |
'O''Brien''s Sales'!A1' | Sheet name with special characters |
- Returns:
- the text representation of this cell reference as it would appear in a formula.
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object
getCellRefParts
public java.lang.String[] getCellRefParts()
- Returns the three parts of the cell reference, the
Sheet name (or null if none supplied), the 1 based
row number, and the A based column letter.
This will not include any markers for absolute
references, so use
formatAsString()
to properly turn references into strings.
appendCellReference
protected void appendCellReference(java.lang.StringBuffer sb)
- Appends cell reference with '$' markers for absolute values as required.
Sheet name is not included.
Copyright 2008 The Apache Software Foundation or
its licensors, as applicable.
|