|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Workbook
High level representation of a Excel workbook. This is the first object most users will construct whether they are reading or writing a workbook. It is also the top level object for creating new sheets/etc.
Field Summary | |
---|---|
static int |
PICTURE_TYPE_DIB
Device independent bitmap |
static int |
PICTURE_TYPE_EMF
Extended windows meta file |
static int |
PICTURE_TYPE_JPEG
JPEG format |
static int |
PICTURE_TYPE_PICT
Mac PICT format |
static int |
PICTURE_TYPE_PNG
PNG format |
static int |
PICTURE_TYPE_WMF
Windows Meta File |
static int |
SHEET_STATE_HIDDEN
Deprecated. POI 3.16 beta 2. Use SheetVisibility.HIDDEN instead. |
static int |
SHEET_STATE_VERY_HIDDEN
Deprecated. POI 3.16 beta 2. Use SheetVisibility.VERY_HIDDEN instead. |
static int |
SHEET_STATE_VISIBLE
Deprecated. POI 3.16 beta 2. Use SheetVisibility.VISIBLE instead. |
Method Summary | |
---|---|
int |
addOlePackage(byte[] oleData,
java.lang.String label,
java.lang.String fileName,
java.lang.String command)
Adds an OLE package manager object with the given content to the sheet |
int |
addPicture(byte[] pictureData,
int format)
Adds a picture to the workbook. |
void |
addToolPack(UDFFinder toopack)
Register a new toolpack in this workbook. |
Sheet |
cloneSheet(int sheetNum)
Create an Sheet from an existing sheet in the Workbook. |
void |
close()
Close the underlying input resource (File or Stream), from which the Workbook was read. |
CellStyle |
createCellStyle()
Create a new Cell style and add it to the workbook's style table |
DataFormat |
createDataFormat()
Returns the instance of DataFormat for this workbook. |
Font |
createFont()
Create a new Font and add it to the workbook's font table |
Name |
createName()
Creates a new (uninitialised) defined name in this workbook |
Sheet |
createSheet()
Create a Sheet for this Workbook, adds it to the sheets and returns the high level representation. |
Sheet |
createSheet(java.lang.String sheetname)
Create a new sheet for this Workbook and return the high level representation. |
Font |
findFont(boolean bold,
short color,
short fontHeight,
java.lang.String name,
boolean italic,
boolean strikeout,
short typeOffset,
byte underline)
Finds a font that matches the one with the supplied attributes |
int |
getActiveSheetIndex()
Convenience method to get the active sheet. |
java.util.List<? extends Name> |
getAllNames()
Returns all defined names. |
java.util.List<? extends PictureData> |
getAllPictures()
Gets all pictures from the Workbook. |
CellStyle |
getCellStyleAt(int idx)
Get the cell style object at the given index |
CreationHelper |
getCreationHelper()
Returns an object that handles instantiating concrete classes of the various instances one needs for HSSF and XSSF. |
int |
getFirstVisibleTab()
Gets the first tab that is displayed in the list of tabs in excel. |
Font |
getFontAt(short idx)
Get the font at the given index number |
boolean |
getForceFormulaRecalculation()
Whether Excel will be asked to recalculate all formulas when the workbook is opened. |
Row.MissingCellPolicy |
getMissingCellPolicy()
Retrieves the current policy on what to do when getting missing or blank cells from a row. |
Name |
getName(java.lang.String name)
|
Name |
getNameAt(int nameIndex)
|
int |
getNameIndex(java.lang.String name)
Gets the defined name index by name Note: Excel defined names are case-insensitive and this method performs a case-insensitive search. |
java.util.List<? extends Name> |
getNames(java.lang.String name)
Returns all defined names with the given name. |
short |
getNumberOfFonts()
Get the number of fonts in the font table |
int |
getNumberOfNames()
|
int |
getNumberOfSheets()
Get the number of spreadsheets in the workbook |
int |
getNumCellStyles()
Get the number of styles the workbook contains |
java.lang.String |
getPrintArea(int sheetIndex)
Retrieves the reference for the printarea of the specified sheet, the sheet name is appended to the reference even if it was not specified. |
Sheet |
getSheet(java.lang.String name)
Get sheet with the given name |
Sheet |
getSheetAt(int index)
Get the Sheet object at the given index. |
int |
getSheetIndex(Sheet sheet)
Returns the index of the given sheet |
int |
getSheetIndex(java.lang.String name)
Returns the index of the sheet by his name |
java.lang.String |
getSheetName(int sheet)
Get the sheet name |
SheetVisibility |
getSheetVisibility(int sheetIx)
Get the visibility (visible, hidden, very hidden) of a sheet in this workbook |
SpreadsheetVersion |
getSpreadsheetVersion()
Returns the spreadsheet version of this workbook |
boolean |
isHidden()
|
boolean |
isSheetHidden(int sheetIx)
Check whether a sheet is hidden. |
boolean |
isSheetVeryHidden(int sheetIx)
Check whether a sheet is very hidden. |
int |
linkExternalWorkbook(java.lang.String name,
Workbook workbook)
Adds the linking required to allow formulas referencing the specified external workbook to be added to this one. |
void |
removeName(int index)
Remove the defined name at the specified index |
void |
removeName(Name name)
Remove a defined name |
void |
removeName(java.lang.String name)
Remove a defined name by name |
void |
removePrintArea(int sheetIndex)
Delete the printarea for the sheet specified |
void |
removeSheetAt(int index)
Removes sheet at the given index |
void |
setActiveSheet(int sheetIndex)
Convenience method to set the active sheet. |
void |
setFirstVisibleTab(int sheetIndex)
Sets the first tab that is displayed in the list of tabs in excel. |
void |
setForceFormulaRecalculation(boolean value)
Whether the application shall perform a full recalculation when the workbook is opened. |
void |
setHidden(boolean hiddenFlag)
|
void |
setMissingCellPolicy(Row.MissingCellPolicy missingCellPolicy)
Sets the policy on what to do when getting missing or blank cells from a row. |
void |
setPrintArea(int sheetIndex,
int startColumn,
int endColumn,
int startRow,
int endRow)
For the Convenience of Java Programmers maintaining pointers. |
void |
setPrintArea(int sheetIndex,
java.lang.String reference)
Sets the printarea for the sheet provided |
void |
setSelectedTab(int index)
Sets the tab whose data is actually seen when the sheet is opened. |
void |
setSheetHidden(int sheetIx,
boolean hidden)
Hide or unhide a sheet. |
void |
setSheetHidden(int sheetIx,
int hidden)
Deprecated. POI 3.16 beta 2. Use setSheetVisibility(int, SheetVisibility) instead. |
void |
setSheetName(int sheet,
java.lang.String name)
Set the sheet name. |
void |
setSheetOrder(java.lang.String sheetname,
int pos)
Sets the order of appearance for a given sheet. |
void |
setSheetVisibility(int sheetIx,
SheetVisibility visibility)
Hide or unhide a sheet. |
java.util.Iterator<Sheet> |
sheetIterator()
Returns an iterator of the sheets in the workbook in sheet order. |
void |
write(java.io.OutputStream stream)
Write out this workbook to an Outputstream. |
Methods inherited from interface java.lang.Iterable |
---|
iterator |
Field Detail |
---|
static final int PICTURE_TYPE_EMF
static final int PICTURE_TYPE_WMF
static final int PICTURE_TYPE_PICT
static final int PICTURE_TYPE_JPEG
static final int PICTURE_TYPE_PNG
static final int PICTURE_TYPE_DIB
@Deprecated @Removal(version="3.18") static final int SHEET_STATE_VISIBLE
SheetVisibility.VISIBLE
instead.
setSheetHidden(int, int)
,
Constant Field Values@Deprecated @Removal(version="3.18") static final int SHEET_STATE_HIDDEN
SheetVisibility.HIDDEN
instead.
setSheetHidden(int, int)
,
Constant Field Values@Deprecated @Removal(version="3.18") static final int SHEET_STATE_VERY_HIDDEN
SheetVisibility.VERY_HIDDEN
instead.
In Excel this state is only available programmatically in VBA:
ThisWorkbook.Sheets("MySheetName").Visible = xlSheetVeryHidden
setSheetHidden(int, int)
,
Constant Field ValuesMethod Detail |
---|
int getActiveSheetIndex()
void setActiveSheet(int sheetIndex)
sheetIndex
- index of the active sheet (0-based)int getFirstVisibleTab()
void setFirstVisibleTab(int sheetIndex)
sheetIndex
- the first tab that to display in the list of tabs (0-based)void setSheetOrder(java.lang.String sheetname, int pos)
sheetname
- the name of the sheet to reorderpos
- the position that we want to insert the sheet into (0 based)void setSelectedTab(int index)
index
- the index of the sheet to select (0 based)Sheet.setSelected(boolean)
void setSheetName(int sheet, java.lang.String name)
See WorkbookUtil.createSafeSheetName(String nameProposal)
for a safe way to create valid names
sheet
- number (0 based)
java.lang.IllegalArgumentException
- if the name is null or invalid
or workbook already contains a sheet with this namecreateSheet(String)
,
WorkbookUtil.createSafeSheetName(String nameProposal)
java.lang.String getSheetName(int sheet)
sheet
- sheet number (0 based)
int getSheetIndex(java.lang.String name)
name
- the sheet name
int getSheetIndex(Sheet sheet)
sheet
- the sheet to look up
Sheet createSheet()
Sheet createSheet(java.lang.String sheetname)
Note that Excel allows sheet names up to 31 chars in length but other applications (such as OpenOffice) allow more. Some versions of Excel crash with names longer than 31 chars, others - truncate such names to 31 character.
POI's SpreadsheetAPI silently truncates the input argument to 31 characters. Example:
Sheet sheet = workbook.createSheet("My very long sheet name which is longer than 31 chars"); // will be truncated
assert 31 == sheet.getSheetName().length();
assert "My very long sheet name which i" == sheet.getSheetName();
Except the 31-character constraint, Excel applies some other rules:
Sheet name MUST be unique in the workbook and MUST NOT contain the any of the following characters:
See WorkbookUtil.createSafeSheetName(String nameProposal)
for a safe way to create valid names
sheetname
- The name to set for the sheet.
java.lang.IllegalArgumentException
- if the name is null or invalid
or workbook already contains a sheet with this nameWorkbookUtil.createSafeSheetName(String nameProposal)
Sheet cloneSheet(int sheetNum)
java.util.Iterator<Sheet> sheetIterator()
int getNumberOfSheets()
Sheet getSheetAt(int index)
index
- of the sheet number (0-based physical & logical)
java.lang.IllegalArgumentException
- if the index is out of range (index
< 0 || index >= getNumberOfSheets()).Sheet getSheet(java.lang.String name)
name
- of the sheet
null
if it does not existvoid removeSheetAt(int index)
index
- of the sheet to remove (0-based)Font createFont()
Font findFont(boolean bold, short color, short fontHeight, java.lang.String name, boolean italic, boolean strikeout, short typeOffset, byte underline)
null
short getNumberOfFonts()
Font getFontAt(short idx)
idx
- index number (0-based)
CellStyle createCellStyle()
java.lang.IllegalStateException
- if the number of cell styles exceeded the limit for this type of Workbook.int getNumCellStyles()
CellStyle getCellStyleAt(int idx)
idx
- index within the set of styles (0-based)
void write(java.io.OutputStream stream) throws java.io.IOException
stream
- - the java OutputStream you wish to write to
java.io.IOException
- if anything can't be written.void close() throws java.io.IOException
Once this has been called, no further operations, updates or reads should be performed on the Workbook.
close
in interface java.io.Closeable
java.io.IOException
int getNumberOfNames()
Name getName(java.lang.String name)
name
- the name of the defined name
null
if not found.java.util.List<? extends Name> getNames(java.lang.String name)
name
- the name of the defined name
java.util.List<? extends Name> getAllNames()
Name getNameAt(int nameIndex)
nameIndex
- position of the named range (0-based)
java.lang.IllegalArgumentException
- if the supplied index is invalidName createName()
int getNameIndex(java.lang.String name)
name
- the name of the defined name
void removeName(int index)
index
- named range index (0 based)void removeName(java.lang.String name)
name
- the name of the defined namevoid removeName(Name name)
name
- the name of the defined nameint linkExternalWorkbook(java.lang.String name, Workbook workbook)
In order for formulas such as "[MyOtherWorkbook]Sheet3!$A$5" to be added to the file, some linking information must first be recorded. Once a given external workbook has been linked, then formulas using it can added. Each workbook needs linking only once.
This linking only applies for writing formulas. To link things
for evaluation, see FormulaEvaluator.setupReferencedWorkbooks(java.util.Map)
name
- The name the workbook will be referenced as in formulasworkbook
- The open workbook to fetch the link required information fromvoid setPrintArea(int sheetIndex, java.lang.String reference)
i.e. Reference = $A$1:$B$2
sheetIndex
- Zero-based sheet index (0 Represents the first sheet to keep consistent with java)reference
- Valid name Reference for the Print Areavoid setPrintArea(int sheetIndex, int startColumn, int endColumn, int startRow, int endRow)
sheetIndex
- Zero-based sheet index (0 = First Sheet)startColumn
- Column to begin printareaendColumn
- Column to end the printareastartRow
- Row to begin the printareaendRow
- Row to end the printareasetPrintArea(int, String)
java.lang.String getPrintArea(int sheetIndex)
sheetIndex
- Zero-based sheet index (0 Represents the first sheet to keep consistent with java)
void removePrintArea(int sheetIndex)
sheetIndex
- Zero-based sheet index (0 = First Sheet)Row.MissingCellPolicy getMissingCellPolicy()
The default is to return blank and null cells.
Row.MissingCellPolicy
void setMissingCellPolicy(Row.MissingCellPolicy missingCellPolicy)
Row.getCell(int)
}. See
Row.MissingCellPolicy
DataFormat createDataFormat()
int addPicture(byte[] pictureData, int format)
pictureData
- The bytes of the pictureformat
- The format of the picture.
PICTURE_TYPE_EMF
,
PICTURE_TYPE_WMF
,
PICTURE_TYPE_PICT
,
PICTURE_TYPE_JPEG
,
PICTURE_TYPE_PNG
,
PICTURE_TYPE_DIB
java.util.List<? extends PictureData> getAllPictures()
PictureData
objects.)CreationHelper getCreationHelper()
boolean isHidden()
false
if this workbook is not visible in the GUIvoid setHidden(boolean hiddenFlag)
hiddenFlag
- pass false
to make the workbook visible in the GUIboolean isSheetHidden(int sheetIx)
Note that a sheet could instead be set to be very hidden, which is different
(isSheetVeryHidden(int)
)
sheetIx
- Number
true
if sheet is hiddengetSheetVisibility(int)
boolean isSheetVeryHidden(int sheetIx)
This is different from the normal hidden status
(isSheetHidden(int)
)
sheetIx
- sheet index to check
true
if sheet is very hiddengetSheetVisibility(int)
void setSheetHidden(int sheetIx, boolean hidden)
sheetIx
- the sheet index (0-based)hidden
- True to mark the sheet as hidden, false otherwisesetSheetVisibility(int, SheetVisibility)
@Removal(version="3.18") void setSheetHidden(int sheetIx, int hidden)
setSheetVisibility(int, SheetVisibility)
instead.
sheetIx
- the sheet index (0-based)hidden
- one of the following Workbook
constants:
Workbook.SHEET_STATE_VISIBLE
,
Workbook.SHEET_STATE_HIDDEN
, or
Workbook.SHEET_STATE_VERY_HIDDEN
.
java.lang.IllegalArgumentException
- if the supplied sheet index or state is invalidSheetVisibility getSheetVisibility(int sheetIx)
sheetIx
- the index of the sheet
void setSheetVisibility(int sheetIx, SheetVisibility visibility)
sheetIx
- the sheet index (0-based)visibility
- the sheet visibility to setvoid addToolPack(UDFFinder toopack)
toopack
- the toolpack to registervoid setForceFormulaRecalculation(boolean value)
Typically you want to force formula recalculation when you modify cell formulas or values of a workbook previously created by Excel. When set to true, this flag will tell Excel that it needs to recalculate all formulas in the workbook the next time the file is opened.
Note, that recalculation updates cached formula results and, thus, modifies the workbook. Depending on the version, Excel may prompt you with "Do you want to save the changes in filename?" on close.
value
- true if the application will perform a full recalculation of
workbook values when the workbook is openedboolean getForceFormulaRecalculation()
SpreadsheetVersion getSpreadsheetVersion()
int addOlePackage(byte[] oleData, java.lang.String label, java.lang.String fileName, java.lang.String command) throws java.io.IOException
oleData
- the payloadlabel
- the label of the payloadfileName
- the original filenamecommand
- the command to open the payload
java.io.IOException
- if the object can't be embedded
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |