ワークシートをアクティブにする(activate)

広告

複数のワークシートを追加した場合に、アクティブにするワークシートを設定します。アクティブとはワークブックが開かれた時に表示され選択された状態になるワークシートのことです。ワークシートをアクティブにするにはSpreadsheet_Excel_Writer_Worksheetクラスで用意されているactivateメソッドを使います。

このワークシートをアクティブに設定します。

アクティブに設定したいワークシートのオブジェクトに対してactivateメソッドを実行すると、そのシートがアクティブとなります。

実際には次のように記述します。

<?php
require_once("Spreadsheet/Excel/Writer.php");

$workbook = new Spreadsheet_Excel_Writer();
$workbook->send('sample1-1.xls');

$worksheet1 =& $workbook->addWorksheet('シート1');
$worksheet2 =& $workbook->addWorksheet('シート2');
$worksheet3 =& $workbook->addWorksheet('シート3');
$worksheet2->activate();

$workbook->close();
?>

サンプルプログラム

では簡単なサンプルで試してみます。

sample30-1.php

<?php
require_once("Spreadsheet/Excel/Writer.php");

$workbook = new Spreadsheet_Excel_Writer('./sheet/sample30-1.xls');
$worksheet1 =& $workbook->addWorksheet('シート1');
$worksheet2 =& $workbook->addWorksheet('シート2');
$worksheet3 =& $workbook->addWorksheet('シート3');

$worksheet2->activate();

$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/sample30-1.xls">Excelファイル</a></p>');
print('</body></html>');
?>

上記のファイルをWWWサーバのドキュメントルート以下に設置しブラウザからアクセスすると次のように表示されます。

ワークシートをアクティブにする(activate)

作成されたExcelファイルへのリンクが表示されます。リンクからExcelファイルをローカルに保存しExcelで開いて下さい。

ワークシートをアクティブにする(activate)

2番目のワークシートがアクティブとなっています。ワークシートを選択する場合との違いも確認して下さい。

( Written by Tatsuo Ikura )