ワークブックの作成と保存
Excelファイルの作成は、まずワークブックを作成し、その次にワークシートの作成やワークシートに対してセルの追加などを行います。そして最後にワークブックを閉じて終了となります。
ではまずワークブックの作成と保存について確認します。
ワークブックの作成
Excelではワークブック単位で管理しており1つのワークブックを1つのファイルとして保存することになります。そこでまずワークブックを作成します。ワークブックはSpreadsheet_Excel_Writer_Workbookクラスとして用意されていますが、ワークブックを作成するためにSpreadsheet_Excel_Writer_Workbookクラスを継承したSpreadsheet_Excel_Writerクラスが用意されています。
class Spreadsheet_Excel_Writer extends Spreadsheet_Excel_Writer_Workbook { // ... }
Spreadsheet_Excel_Writerクラスのコンストラクタは次のようになっています。
Spreadsheet_Excel_Writer ([string $filename=''])
コンストラクタです。ワークブックを作成します。 パラメータ: $filename オプションで、ワークブックのファイル名を指定します。 戻り値: 作成したワークブック
ワークブックオブジェクトを表すSpreadsheet_Excel_Writer_Workbookクラスのオブジェクトを作成します。引数にはワークブックのファイル名を指定して下さい。
実際には次のように記述します。
<?php require_once("Spreadsheet/Excel/Writer.php"); $workbook = new Spreadsheet_Excel_Writer('sample.xls'); ?>
PHPプログラムが配置されているディレクトリに指定したファイル名でExcelファイルが作成されます。
ワークブックを閉じる
ワークブックに対する処理が終了したら最後にワークブックを閉じる必要があります。Spreadsheet_Excel_Writer_Workbookクラスで用意されているcloseメソッドを使います。
mixed Workbook::close ()
ワークブックの作成終了時のメソッドを呼び出します。 全てのワークブックで、 最後に必ずこのメソッドを呼ばなければなりません。 戻り値: 成功した場合は true、失敗した場合は PEAR_Error を返します。
closeメソッドを呼び出すことでワークブックに対する操作を完了します。
実際には次のように記述します。
<?php require_once("Spreadsheet/Excel/Writer.php"); $workbook = new Spreadsheet_Excel_Writer('sample.xls'); $workbook->close(); ?>
サンプルプログラム
では簡単なサンプルで試してみます。
<?php require_once("Spreadsheet/Excel/Writer.php"); $workbook = new Spreadsheet_Excel_Writer('./sheet/sample3-1.xls'); $worksheet =& $workbook->addWorksheet('サンプル'); $workbook->close(); print('<html>'); print('<head>'); print('<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />'); print('</head>'); print('<body>'); print('<p><a href="./sheet/sample3-1.xls">Excelファイル</a></p>'); print('</body></html>'); ?>
上記のファイルをWWWサーバのドキュメントルート以下に設置しブラウザからアクセスすると次のように表示されます。
ワークシートを1枚も追加していないとエラーとなるためワークシートをワークブックに追加しています。ワークシートの追加については別のページで確認します。
ワークブックが含まれるExcelファイルがサーバ側に作成され、作成されたExcelファイルに対するリンクが表示されます。リンクをクリックすればExcelファイルをアプリケーションで開くか保存するかの選択ダイアログなどが表示されます(ご利用のブラウザによる)のでローカルファイルに一度保存してExcelで開くと次のように表示されます。
Excelで利用可能なファイルが作成出来ていることが確認できます。
( Written by Tatsuo Ikura )