How to copy Excel Cells
Java Excel API is an open source java library to read, write and modify Excel spread sheets.
This requires the library jxl-2.6.12.jar to be in classpath.
The following example shows how to copy Cells in Excel Spread sheet.
package com.bethecoder.tutorials.jexcelapi.write;
import java.io.File;
import java.io.IOException;
import jxl.Workbook;
import jxl.format.Colour;
import jxl.read.biff.BiffException;
import jxl.write.Label;
import jxl.write.WritableCell;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
public class CellCopyTest {
/**
* @param args
* @throws IOException
* @throws IOException
* @throws WriteException
* @throws BiffException
*/
public static void main ( String [] args ) throws IOException, WriteException {
//Creates a writable workbook with the given file name
WritableWorkbook workbook = Workbook.createWorkbook ( new File ( "C:/JXL/CopyCell.xls" )) ;
WritableSheet sheet = workbook.createSheet ( "My Sheet" , 0 ) ;
// Create cell font and format
WritableFont cellFont = new WritableFont ( WritableFont.TIMES, 16 ) ;
cellFont.setColour ( Colour.BLUE ) ;
WritableCellFormat cellFormat = new WritableCellFormat ( cellFont ) ;
cellFormat.setBackground ( Colour.ORANGE ) ;
// Create the label, specifying content and format
Label label = new Label ( 1 , 2 , "ABCD" , cellFormat ) ;
sheet.addCell ( label ) ;
//Create copies of cell in a loop
WritableCell copiedCell = null ;
for ( int i = 0 ; i < 4 ; i ++ ) {
//Deep copy cell
copiedCell = label.copyTo ( 1 , 4 + i ) ;
sheet.addCell ( copiedCell ) ;
}
//Writes out the data held in this workbook in Excel format
workbook.write () ;
//Close and free allocated memory
workbook.close () ;
}
}
It gives the following output,