Package jxl.write

# Class WritableWorkbook

java.lang.Object
jxl.write.WritableWorkbook

public abstract class WritableWorkbook extends Object
A writable workbook

## Field Summary

Fields
Modifier and Type
Field
Description
`static final WritableFont`
`ARIAL_10_PT`
The default font for Cell formats
`static final WritableCellFormat`
`HIDDEN_STYLE`
A cell format used to hide the cell contents
`static final WritableFont`
`HYPERLINK_FONT`
The font used for hyperlinks
`static final WritableCellFormat`
`HYPERLINK_STYLE`
The style used for hyperlinks
`static final WritableCellFormat`
`NORMAL_STYLE`
The default style for cells

## Method Summary

Modifier and Type
Method
Description
`abstract void`
`addNameArea(String name, WritableSheet sheet, int firstCol, int firstRow, int lastCol, int lastRow)`
Add new named area to this workbook with the given information.
`abstract void`
`close()`
Closes this workbook, and makes any memory allocated available for garbage collection.
`void`
`copy(Workbook w)`
Deprecated.
Copying now occurs implicitly as part of the overloaded factory method Workbook.createWorkbood
`abstract void`
`copySheet(int s, String name, int index)`
Copy sheet within the same workbook.
`abstract void`
`copySheet(String s, String name, int index)`
Copies the specified sheet and places it at the index specified by the parameter
`abstract WritableSheet`
`createSheet(String name, int index)`
Creates, and returns a worksheet at the specified position with the specified name If the index specified is less than or equal to zero, the new sheet is created at the beginning of the workbook.
`abstract Range[]`
`findByName(String name)`
Gets the named range from this workbook.
`abstract WritableCell`
`findCellByName(String name)`
Gets the named cell from this workbook.
`abstract int`
`getNumberOfSheets()`
Returns the number of sheets in this workbook
`abstract String[]`
`getRangeNames()`
Gets the named ranges
`abstract WritableSheet`
`getSheet(int index)`
Gets the specified sheet within this workbook
`abstract WritableSheet`
`getSheet(String name)`
Gets the sheet with the specified name from within this workbook
`abstract String[]`
`getSheetNames()`
Gets the sheet names
`abstract WritableSheet[]`
`getSheets()`
Gets the sheets within this workbook.
`abstract WritableCell`
`getWritableCell(String loc)`
Returns the cell for the specified location eg.
`abstract WritableSheet`
`importSheet(String name, int index, Sheet s)`
Imports a sheet from a different workbook.
`abstract WritableSheet`
`moveSheet(int fromIndex, int toIndex)`
Moves the specified sheet within this workbook to another index position.
`abstract void`
`removeRangeName(String name)`
Removes the specified named range from the workbook.
`abstract void`
`removeSheet(int index)`
Removes the sheet at the specified index from this workbook
`abstract void`
`setColourRGB(Colour c, int r, int g, int b)`
Sets the RGB value for the specified colour for this workbook
`abstract void`
`setOutputFile(File fileName)`
Sets a new output file.
`abstract void`
`setProtected(boolean prot)`
Indicates whether or not this workbook is protected
`abstract void`
`write()`
Writes out the data held in this workbook in Excel format

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### ARIAL_10_PT

public static final WritableFont ARIAL_10_PT
The default font for Cell formats

### HYPERLINK_FONT

public static final WritableFont HYPERLINK_FONT
The font used for hyperlinks

### NORMAL_STYLE

public static final WritableCellFormat NORMAL_STYLE
The default style for cells

### HYPERLINK_STYLE

public static final WritableCellFormat HYPERLINK_STYLE
The style used for hyperlinks

### HIDDEN_STYLE

public static final WritableCellFormat HIDDEN_STYLE
A cell format used to hide the cell contents

## Method Details

### getSheets

public abstract WritableSheet[] getSheets()
Gets the sheets within this workbook. Use of this method for large worksheets can cause performance problems.

Returns:
  an array of the individual sheets

### getSheetNames

public abstract String[] getSheetNames()
Gets the sheet names

Returns:
  an array of strings containing the sheet names

### getSheet

public abstract WritableSheet getSheet(int index) throws IndexOutOfBoundsException
Gets the specified sheet within this workbook

Parameters:
  `index` - the zero based index of the reQuired sheet
Returns:
  The sheet specified by the index
Throws:
  `IndexOutOfBoundsException` - when index refers to a non-existent sheet

### getSheet

public abstract WritableSheet getSheet(String name)
Gets the sheet with the specified name from within this workbook

Parameters:
  `name` - the sheet name
Returns:
  The sheet with the specified name, or null if it is not found

### getWritableCell

public abstract WritableCell getWritableCell(String loc)
Returns the cell for the specified location eg. "Sheet1!A4". This is identical to using the CellReferenceHelper with its associated performance overheads, consequently it should be use sparingly

Parameters:
  `loc` - the cell to retrieve
Returns:
  the cell at the specified location

### getNumberOfSheets

public abstract int getNumberOfSheets()
Returns the number of sheets in this workbook

Returns:
  the number of sheets in this workbook

### close

public abstract void close() throws IOException, WriteException
Closes this workbook, and makes any memory allocated available for garbage collection. Also closes the underlying output stream if necessary.

Throws:
  `IOException`
  `WriteException`

### createSheet

public abstract WritableSheet createSheet(String name, int index)
Creates, and returns a worksheet at the specified position with the specified name If the index specified is less than or equal to zero, the new sheet is created at the beginning of the workbook. If the index is greater than the number of sheet, then the sheet is created at the end of the workbook.

Parameters:
  `name` - the sheet name
  `index` - the index number at which to insert
Returns:
  the new sheet

### importSheet

public abstract WritableSheet importSheet(String name, int index, Sheet s)
Imports a sheet from a different workbook. Does a deep copy on all elements within that sheet

Parameters:
  `name` - the name of the new sheet
  `index` - the position for the new sheet within this workbook
  `sheet` - the sheet (from another workbook) to merge into this one
Returns:
  the new sheet

### copySheet

public abstract void copySheet(int s, String name, int index)
Copy sheet within the same workbook. The sheet specified is copied to the new sheet name at the position

Parameters:
  `s` - the index of the sheet to copy
  `name` - the name of the new sheet
  `index` - the position of the new sheet

### copySheet

public abstract void copySheet(String s, String name, int index)
Copies the specified sheet and places it at the index specified by the parameter

Parameters:
  `s` - the name of the sheet to copy
  `name` - the name of the new sheet
  `index` - the position of the new sheet

### removeSheet

public abstract void removeSheet(int index)
Removes the sheet at the specified index from this workbook

Parameters:
  `index` - the sheet index to remove

### moveSheet

public abstract WritableSheet moveSheet(int fromIndex, int toIndex)
Moves the specified sheet within this workbook to another index position.

Parameters:
  `fromIndex` - the zero based index of the required sheet
  `toIndex` - the zero based index of the required sheet
Returns:
  the sheet that has been moved

### write

public abstract void write() throws IOException
Writes out the data held in this workbook in Excel format

Throws:
  `IOException`

### setProtected

public abstract void setProtected(boolean prot)
Indicates whether or not this workbook is protected

Parameters:
  `prot` - Protected flag

### setColourRGB

public abstract void setColourRGB(Colour c, int r, int g, int b)
Sets the RGB value for the specified colour for this workbook

Parameters:
  `c` - the colour whose RGB value is to be overwritten
  `r` - the red portion to set (0-255)
  `g` - the green portion to set (0-255)
  `b` - the blue portion to set (0-255)

### copy

public void copy(Workbook w)
Deprecated.
Copying now occurs implicitly as part of the overloaded factory method Workbook.createWorkbood
This method can be used to create a writable clone of some other workbook

Parameters:
  `w` - the workdoock to copy

### findCellByName

public abstract WritableCell findCellByName(String name)
Gets the named cell from this workbook. The name refers to a range of cells, then the cell on the top left is returned. If the name cannot be, null is returned

Parameters:
  `name` - the name of the cell/range to search for
Returns:
  the cell in the top left of the range if found, NULL otherwise

### findByName

public abstract Range[] findByName(String name)
Gets the named range from this workbook. The Range object returns contains all the cells from the top left to the bottom right of the range. If the named range comprises an adjacent range, the Range[] will contain one object; for non-adjacent ranges, it is necessary to return an array of length greater than one. If the named range contains a single cell, the top left and bottom right cell will be the same cell

Parameters:
  `name` - the name of the cell/range to search for
Returns:
  the range of cells

### getRangeNames

public abstract String[] getRangeNames()
Gets the named ranges

Returns:
  the list of named cells within the workbook

### removeRangeName

public abstract void removeRangeName(String name)
Removes the specified named range from the workbook. Note that removing a name could cause formulas which use that name to calculate their results incorrectly

Parameters:
  `name` - the name to remove

### addNameArea

public abstract void addNameArea(String name, WritableSheet sheet, int firstCol, int firstRow, int lastCol, int lastRow)
Add new named area to this workbook with the given information.

Parameters:
  `name` - name to be created.
  `sheet` - sheet containing the name
  `firstCol` - first column this name refers to.
  `firstRow` - first row this name refers to.
  `lastCol` - last column this name refers to.
  `lastRow` - last row this name refers to.

### setOutputFile

public abstract void setOutputFile(File fileName) throws IOException
Sets a new output file. This allows the same workbook to be written to various different output files without having to read in any templates again

Parameters:
  `fileName` - the file name
Throws:
  `IOException`