jxl.write

Interface WritableSheet

All Superinterfaces:
Sheet

public interface WritableSheet
extends Sheet

Interface for a worksheet that may be modified. The most important modification for a sheet is to have cells added to it

Method Summary

void
addCell(WritableCell cell)
Adds a cell to this sheet The RowsExceededException may be caught if client code wishes to explicitly trap the case where too many rows have been written to the current sheet.
void
addColumnPageBreak(int col)
Forces a page break at the specified column
void
addHyperlink(WritableHyperlink h)
Adds the specified hyperlink.
void
addImage(WritableImage image)
Adds an image to the sheet
void
addRowPageBreak(int row)
Forces a page break at the specified row
WritableImage
getImage(int i)
Accessor for the image
int
getNumberOfImages()
Accessor for the number of images on the sheet
WritableCell
getWritableCell(String loc)
Returns the cell for the specified location eg.
WritableCell
getWritableCell(int column, int row)
Gets the writable cell from this sheet.
WritableHyperlink[]
getWritableHyperlinks()
Gets the writable hyperlinks from this sheet.
void
insertColumn(int col)
Inserts a blank column into this spreadsheet.
void
insertRow(int row)
Inserts a blank row into this spreadsheet.
Range
mergeCells(int col1, int row1, int col2, int row2)
Merges the specified cells.
void
removeColumn(int col)
Removes a column from this spreadsheet.
void
removeHyperlink(WritableHyperlink h)
Removes the specified hyperlink.
void
removeHyperlink(WritableHyperlink h, boolean preserveLabel)
Removes the specified hyperlink.
void
removeImage(WritableImage wi)
Removes the specified image from the sheet.
void
removeRow(int row)
Removes a row from this spreadsheet.
void
setColumnGroup(int col1, int col2, boolean collapsed)
Sets a column grouping
void
setColumnView(int col, int width)
Sets the width of the column on this sheet, in characters.
void
setColumnView(int col, int width, CellFormat format)
Deprecated. Use the CellView bean instead
void
setColumnView(int col, CellView view)
Sets the view for this column
void
setFooter(String l, String c, String r)
Deprecated. use the SheetSettings bean
void
setHeader(String l, String c, String r)
Deprecated. use the SheetSettings bean
void
setHidden(boolean hidden)
Deprecated. use the SheetSettings bean instead
void
setName(String name)
Sets the name of this sheet
void
setPageSetup(PageOrientation p)
Sets the page setup details
void
setPageSetup(PageOrientation p, double hm, double fm)
Sets the page setup details
void
setPageSetup(PageOrientation p, PaperSize ps, double hm, double fm)
Sets the page setup details
void
setProtected(boolean prot)
Deprecated. use the SheetSettings bean instead
void
setRowGroup(int row1, int row2, boolean collapsed)
Sets a row grouping
void
setRowView(int row, boolean collapsed)
Sets the properties of the specified row
void
setRowView(int row, int height)
Sets the height of the specified row, as well as its collapse status
void
setRowView(int row, int height, boolean collapsed)
Sets the height of the specified row, as well as its collapse status
void
setRowView(int row, CellView view)
Sets the view for this column
void
unmergeCells(Range r)
Unmerges the specified cells.
void
unsetColumnGroup(int col1, int col2)
Unsets a column grouping
void
unsetRowGroup(int row1, int row2)
Unsets a row grouping

Methods inherited from interface jxl.Sheet

findCell, findLabelCell, getCell, getCell, getColumn, getColumnFormat, getColumnPageBreaks, getColumnView, getColumnWidth, getColumns, getDrawing, getHyperlinks, getMergedCells, getName, getNumberOfImages, getRow, getRowHeight, getRowPageBreaks, getRowView, getRows, getSettings, isHidden, isProtected

Method Details

addCell

public void addCell(WritableCell cell)
            throws WriteException,
                   jxl.write.biff.RowsExceededException
Adds a cell to this sheet The RowsExceededException may be caught if client code wishes to explicitly trap the case where too many rows have been written to the current sheet. If this behaviour is not desired, it is sufficient simply to handle the WriteException, since this is a base class of RowsExceededException
Parameters:
cell - the cell to add
Throws:
jxl.write.biff.RowsExceededException -

addColumnPageBreak

public void addColumnPageBreak(int col)
Forces a page break at the specified column
Parameters:
col - the column to break at

addHyperlink

public void addHyperlink(WritableHyperlink h)
            throws WriteException,
                   jxl.write.biff.RowsExceededException
Adds the specified hyperlink. Adding a hyperlink causes any populated cells in the range of the hyperlink to be set to empty If the cells which activate this hyperlink clash with any other cells, they are still added to the worksheet and it is left to Excel to handle this.
Parameters:
h - the hyperlink
Throws:
jxl.write.biff.RowsExceededException -

addImage

public void addImage(WritableImage image)
Adds an image to the sheet
Parameters:
image - the image to add

addRowPageBreak

public void addRowPageBreak(int row)
Forces a page break at the specified row
Parameters:
row - the row to break at

getImage

public WritableImage getImage(int i)
Accessor for the image
Parameters:
i - the 0 based image number
Returns:
the image at the specified position

getNumberOfImages

public int getNumberOfImages()
Accessor for the number of images on the sheet
Specified by:
getNumberOfImages in interface Sheet
Returns:
the number of images on this sheet

getWritableCell

public WritableCell getWritableCell(String loc)
Returns the cell for the specified location eg. "A4". Note that this method is identical to calling getCell(CellReferenceHelper.getColumn(loc), CellReferenceHelper.getRow(loc)) and its implicit performance overhead for string parsing. As such,this method should therefore be used sparingly
Parameters:
loc - the cell reference
Returns:
the cell at the specified co-ordinates

getWritableCell

public WritableCell getWritableCell(int column,
                                    int row)
Gets the writable cell from this sheet. Use of this method allows the returned cell to be modified by the users application
Parameters:
column - the column
row - the row
Returns:
the cell at the specified position

getWritableHyperlinks

public WritableHyperlink[] getWritableHyperlinks()
Gets the writable hyperlinks from this sheet. The hyperlinks that are returned may be modified by user applications
Returns:
the writable hyperlinks

insertColumn

public void insertColumn(int col)
Inserts a blank column into this spreadsheet. If the column is out of range of the columns in the sheet, then no action is taken
Parameters:
col - the column to insert

insertRow

public void insertRow(int row)
Inserts a blank row into this spreadsheet. If the row is out of range of the rows in the sheet, then no action is taken
Parameters:
row - the row to insert

mergeCells

public Range mergeCells(int col1,
                        int row1,
                        int col2,
                        int row2)
            throws WriteException,
                   jxl.write.biff.RowsExceededException
Merges the specified cells. Any clashes or intersections between merged cells are resolved when the spreadsheet is written out
Parameters:
col1 - the column number of the top left cell
row1 - the row number of the top left cell
col2 - the column number of the bottom right cell
row2 - the row number of the bottom right cell
Returns:
the Range object representing the merged cells
Throws:
jxl.write.biff.RowsExceededException -

removeColumn

public void removeColumn(int col)
Removes a column from this spreadsheet. If the column is out of range of the columns in the sheet, then no action is taken
Parameters:
col - the column to remove

removeHyperlink

public void removeHyperlink(WritableHyperlink h)
Removes the specified hyperlink. Note that if you merely set the cell contents to be an Empty cell, then the cells containing the hyperlink will still be active. The contents of the cell which activate the hyperlink are removed. The hyperlink passed in must be a hyperlink retrieved using the getHyperlinks method
Parameters:
h - the hyperlink to remove.

removeHyperlink

public void removeHyperlink(WritableHyperlink h,
                            boolean preserveLabel)
Removes the specified hyperlink. Note that if you merely set the cell contents to be an Empty cell, then the cells containing the hyperlink will still be active. If the preserveLabel field is set, the cell contents of the hyperlink are preserved, although the hyperlink is deactivated. If this value is FALSE, the cell contents are removed The hyperlink passed in must be a hyperlink retrieved using the getHyperlinks method
Parameters:
h - the hyperlink to remove.
preserveLabel - if TRUE preserves the label contents, if FALSE removes them

removeImage

public void removeImage(WritableImage wi)
Removes the specified image from the sheet. The image passed in must be the same instance as that previously retrieved using the getImage() method
Parameters:
wi - the image to remove

removeRow

public void removeRow(int row)
Removes a row from this spreadsheet. If the row is out of range of the columns in the sheet, then no action is taken
Parameters:
row - the row to remove

setColumnGroup

public void setColumnGroup(int col1,
                           int col2,
                           boolean collapsed)
            throws WriteException,
                   jxl.write.biff.RowsExceededException
Sets a column grouping
Parameters:
col1 - the first column of the group
col2 - the last column of the group
collapsed - should the group be collapsed?
Throws:
WriteException -
jxl.write.biff.RowsExceededException -

setColumnView

public void setColumnView(int col,
                          int width)
Sets the width of the column on this sheet, in characters. This causes Excel to resize the entire column. If the columns specified already has view information associated with it, then it is replaced by the new data
Parameters:
col - the column to be formatted
width - the width of the column

setColumnView

public void setColumnView(int col,
                          int width,
                          CellFormat format)

Deprecated. Use the CellView bean instead

Sets the width and style of every cell in the specified column. If the columns specified already has view information associated with it, then it is replaced by the new data
Parameters:
col - the column to be formatted
width - the width of the column, in characters
format - the format of every cell in the column

setColumnView

public void setColumnView(int col,
                          CellView view)
Sets the view for this column
Parameters:
col - the column on which to set the view
view - the view to set

setFooter

public void setFooter(String l,
                      String c,
                      String r)

Deprecated. use the SheetSettings bean

Sets the footer for this page
Parameters:
l - the print header to print on the left side
c - the print header to print in the centre
r - the print header to print on the right hand side

setHeader

public void setHeader(String l,
                      String c,
                      String r)

Deprecated. use the SheetSettings bean

Sets the header for this page
Parameters:
l - the print header to print on the left side
c - the print header to print in the centre
r - the print header to print on the right hand side

setHidden

public void setHidden(boolean hidden)

Deprecated. use the SheetSettings bean instead

Indicates whether or not this sheet is hidden
Parameters:
hidden - hidden flag

setName

public void setName(String name)
Sets the name of this sheet
Parameters:
name - the name of the sheet

setPageSetup

public void setPageSetup(PageOrientation p)
Sets the page setup details
Parameters:
p - the page orientation

setPageSetup

public void setPageSetup(PageOrientation p,
                         double hm,
                         double fm)
Sets the page setup details
Parameters:
p - the page orientation
hm - the header margin, in inches
fm - the footer margin, in inches

setPageSetup

public void setPageSetup(PageOrientation p,
                         PaperSize ps,
                         double hm,
                         double fm)
Sets the page setup details
Parameters:
p - the page orientation
ps - the paper size
hm - the header margin, in inches
fm - the footer margin, in inches

setProtected

public void setProtected(boolean prot)

Deprecated. use the SheetSettings bean instead

Indicates whether or not this sheet is protected
Parameters:
prot - Protected flag

setRowGroup

public void setRowGroup(int row1,
                        int row2,
                        boolean collapsed)
            throws WriteException,
                   jxl.write.biff.RowsExceededException
Sets a row grouping
Parameters:
row1 - the first row of the group
row2 - the last row of the group
collapsed - should the group be collapsed?
Throws:
WriteException -
jxl.write.biff.RowsExceededException -

setRowView

public void setRowView(int row,
                       boolean collapsed)
            throws jxl.write.biff.RowsExceededException
Sets the properties of the specified row
Parameters:
row - the row to be formatted
collapsed - indicates whether the row is collapsed
Throws:
jxl.write.biff.RowsExceededException -

setRowView

public void setRowView(int row,
                       int height)
            throws jxl.write.biff.RowsExceededException
Sets the height of the specified row, as well as its collapse status
Parameters:
row - the row to be formatted
height - the row height in characters
Throws:
jxl.write.biff.RowsExceededException -

setRowView

public void setRowView(int row,
                       int height,
                       boolean collapsed)
            throws jxl.write.biff.RowsExceededException
Sets the height of the specified row, as well as its collapse status
Parameters:
row - the row to be formatted
height - the row height in 1/20th of a point
collapsed - indicates whether the row is collapsed
Throws:
jxl.write.biff.RowsExceededException -

setRowView

public void setRowView(int row,
                       CellView view)
            throws jxl.write.biff.RowsExceededException
Sets the view for this column
Parameters:
row - the column on which to set the view
view - the view to set
Throws:
jxl.write.biff.RowsExceededException -

unmergeCells

public void unmergeCells(Range r)
Unmerges the specified cells. The Range passed in should be one that has been previously returned as a result of the getMergedCells method
Parameters:
r - the range of cells to unmerge

unsetColumnGroup

public void unsetColumnGroup(int col1,
                             int col2)
            throws WriteException,
                   jxl.write.biff.RowsExceededException
Unsets a column grouping
Parameters:
col1 - the first column to unset
col2 - the last column to unset
Throws:
WriteException -
jxl.write.biff.RowsExceededException -

unsetRowGroup

public void unsetRowGroup(int row1,
                          int row2)
            throws WriteException,
                   jxl.write.biff.RowsExceededException
Unsets a row grouping
Parameters:
row1 - the first row to unset
row2 - the last row to unset
Throws:
WriteException -
jxl.write.biff.RowsExceededException -