シートの新規作成
ワークブックには複数のシートを含めることができます。これによって目的別に用意した複数のシートを一つのワークブックでまとめて管理することができるようになります。ワークブックの中ではウィンドウ下部にタブが表示され、シートを選択して表示することができます。ここではまず新規のシートを作成する方法を確認します。
Apache POIにおいてシートを表すオブジェクトは「HSSFSheet」クラス及び「XSSFSheet」クラスのオブジェクトとなります。
HSSFSheetクラスのクラス定義は次のようになっています。
public final class HSSFSheet extends java.lang.Object implements Sheet java.lang.Object L org.apache.poi.hssf.usermodel.HSSFSheet
新規にHSSFSheetクラスのオブジェクトを作成するにはHSSFWorkbookクラスで用意されているcreateSheetメソッドなどを使って作成します。
HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet();
続いてXSSFSheetクラスです。XSSFSheetクラスのクラス定義は次のようになっています。
public class XSSFSheet extends POIXMLDocumentPart implements Sheet java.lang.Object L org.apache.poi.POIXMLDocumentPart L org.apache.poi.xssf.usermodel.XSSFSheet
新規にXSSFSheetクラスのオブジェクトを作成するにはXSSFWorkbookクラスで用意されているcreateSheetメソッドなどを使って作成します。
XSSFWorkbook wb = new XSSFWorkbook(); XSSFSheet sheet = wb.createSheet();
このようにExcel2003までの形式のシートと、Excel2007の形式のシートを明示的に作成することができます。
Sheetインターフェース
「ss」ユーザーモデルでは、まずWorkbookインターフェースを実装したクラスのオブジェクトを作成しました。同じようにシートを作成するにはWorkbookインターフェースで用意されているcreateSheetメソッドを使ってシートオブジェクトを作成します。
Sheet createSheet()
Sreate an Sheet for this Workbook, adds it to the sheets and returns the high level representation. Use this to create new sheets. Returns: Sheet representing the new sheet.
このメソッドを使って作成されるオブジェクトはSheetインターフェースを実装したクラスのオブジェクトとなります。Sheetインターフェースは「HSSFSheet」クラス及び「XSSFSheet」クラスに共通するスーパーインターフェースです。
実際の使い方は次のようになります。
Workbook wb1 = new HSSFWorkbook(); Sheet sheet1 = wb1.createSheet(); Workbook wb2 = new XSSFWorkbook(); Sheet sheet2 = wb2.createSheet();
どちらのファイルフォーマットの形式のものであっても同じようにシートを扱うことができます。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。