__sozai__/0011738.pngセルの新規作成

__sozai__/0012210.gif

 

→ サンプルソース( Sample_06_01.java )

 

セルを新規作成するには、XSSFRowクラスのcreateCellメソッドを使用します。


__sozai__/0011780.png記述

  XSSFWorkbook wb = new Workbook( );

  XSSFSheet sheet = wb.createSheet( "sheet01" );

  XSSFRow row = sheet.createRow( 0 );

  XSSFCell cell = row.creatCell( 0 );


引数には列番号を設定します。上記のサンプルではシート一番左上のA1セルを新

作成しています。



__sozai__/0011738.pngセルの読み込み

__sozai__/0012210.gif

 

→ サンプルソース( Sample_06_02.java )

→ サンプルファイル( sampleRead.xlsx )

 

作成済みのセルを読み込む場合は、XSSFRowクラスのgetCellメソッドを使用し

ます。


__sozai__/0011780.png記述

  InputStream in = new FileInputStream( "sampleRead.xlsx" );

  XSSFWorkbook wb = ( XSSFWorkbook ) WorkbookFactory.create( in );

  XSSFSheet sheet = wb.getSheet( "sheet01" );

  XSSFRow row = sheet.getRow( 0 );

  XSSFCell cell = row.getCell( 0 );



引数には読み込みたいセルの列番号を設定します。



__sozai__/0011738.pngセルに値を設定

__sozai__/0012210.gif

 

→ サンプルソース( Sample_06_03.java )

 

セルに値を設定するには、XSSFCellクラスのsetCellValueメソッドを使用しま

す。


__sozai__/0011780.png記述

  XSSFWorkbook wb = new Workbook( );

  XSSFSheet sheet = wb.createSheet( "sheet01" );

  XSSFRow row = sheet.createRow( 0 );

  XSSFCell cell1 = row.createCell( 0 );

  cell1.setValue( 123 );



引数には値、もしくは文字列を設定します。設定できるのは、数値、文字列、真

のフラグ、日付の4種類です。


__sozai__/0011780.png記述

  cell1.setValue( 123 );

  cell2.setValue( "サンプル" );

  cell3.setValue( true );

  cell4.setValue( Calendar.getInstance( ) );


なおセルに日付を設定する場合のみ、上記に加えてセルタイプの設定が必要とな

ます。詳しくは「セルタイプの設定」をご覧ください。



__sozai__/0011738.pngセルタイプの設定

__sozai__/0012210.gif

 

→ サンプルソース( Sample_06_04.java )

 

セルタイプを設定するには、XSSFCellクラスのsetCellTypeメソッドを使用しま

す。


__sozai__/0011780.png記述

  XSSFWorkbook wb = new Workbook( );

  XSSFSheet sheet = wb.createSheet( "sheet01" );

  XSSFRow row = sheet.createRow( 0 );

  XSSFCell cell2 = row.createCell( 1 );

  cell2.setValue( 123 );

  cell2.setCellType( Cell.CELL_TYPE_STRING );

 

引数にはCellインターフェースの定数を使用します。定数は6種類用意されていま

す。


定数中身
 Cell.CELL_TYPE_NUMERIC  数値
 Cell.CELL_TYPE_STRING  文字列
 Cell.CELL_TYPE_BOOLEAN  真,偽
 Cell.CELL_TYPE_FORMULA  計算式
 Cell.CELL_TYPE_BLANK  空白
 Cell.CELL_TYPE_ERROR  エラーコード

 

 

 


__sozai__/0011738.pngセルに設定された値の取得

__sozai__/0012210.gif

 

→ サンプルソース( Sample_06_05.java )

→ サンプルファイル( sampleRead.xlsx )

 

セルに設定された値を取得するには、取得するデータの型に合わせたXSSFCell

ラスの各メソッドを使用します。たとえばセルから文字列を取得する場合は以下の

ようになります。


__sozai__/0011780.png記述

  InputStream in = new FileInputStream( "sampleRead.xlsx" );

  XSSFWorkbook wb = ( XSSFWorkbook ) WorkbookFactory.create( in );

  XSSFSheet sheet = wb.getSheet("sheet01");

  XSSFRow row = sheet.getRow( 0 );

  XSSFCell cell = row.getCell( 0 );

  String res =  cell.getStringCellValue( );


引数はありません。取得したいデータと使用する関数の関係は以下の通りです。


データ関数戻り値の型
 数値  getNumericCellValue  double
 文字列  getStringCellValue  String
 日付  getDateCellValue  Date
 計算式  getCellFormula  String
 真偽  getBooleanCellValue  boolean
 エラーコード  getErrorCellValue  byte


ちなみに取得したいデータと異なる関数を使用した場合はエラーが返ってきます。




__sozai__/0011738.pngセルに計算式を設定

__sozai__/0012210.gif

 

→ サンプルソース( Sample_06_06.java )

 

セルに値ではなく計算式を設定するには、XSSFCellクラスのsetCellFormulaメ

ソッドを使用します。


__sozai__/0011780.png記述

 XSSFWorkbook wb = new Workbook( );

 XSSFSheet sheet = wb.createSheet( "sheet01" );

 XSSFRow row = sheet.createRow( 1 );

 XSSFCell cell = row.createCell( 4 );

 cell.setCellFormula( "SUM(B2:D2)" );

 

引数には計算式を示す文字列を設定します。上記サンプルの場合、Excelで設定

する場合は「=SUM(B2:D2)」という形になりますが、ここでは「=」は必要あ

りません。


以下は計算式の一例となります。設定する計算式はそのまま文字列として渡すの

で、詳しくはExcelのヘルプをご覧ください。


計算式意味
 SUM  合計
 AVERAGE  平均
 ROUND  四捨五入
 COUNT  集計
 MAX  最大値
 MIN  最小値



__sozai__/0011738.pngセルを結合する

__sozai__/0012210.gif

 

→ サンプルソース( Sample_06_07.java )

 

セルの結合設定には、XSSFSheetクラスのaddMergedRegionメソッドを使用し

ます。


__sozai__/0011780.png記述

  XSSFWorkbook wb = new Workbook( );

  XSSFSheet sheet = wb.createSheet( "sheet01" );

  sheet.addMergedRegion( new CellRangeAddress( 1, 3, 1, 3 ) );


引数にはCellRangeAddressクラスで結合範囲を設定をして渡します

CellRangeAddressクラスのコンストラクタの引数は左から、開始行、終了行、

開始列、終了列となっています。



btn028_06.gif 手順アイコン.png btn029_05.gif