罫線の表示(setBorder, setTop, setBottom, setLeft, setRight)

広告

セルに対して罫線を表示する方法を確認します。上下左右を一度に設定する方法と、個々に設定する方法が用意されています。

まず上下左右全ての罫線に同じ設定を行うにはSpreadsheet_Excel_Writer_Formatクラスで用意されているsetBorderメソッドを使います。

同じスタイルをセルの罫線に設定します。

パラメータ:
  $style  セルの総ての罫線のスタイル

1番目の引数はに罫線の種類を指定します。1を指定すると常の罫線、2を指定すると太罫線となります。

上下左右の罫線に対して個別に設定を行うには、それぞれ用意されているメソッドを使います。

セルの上の罫線:

セルの上罫線の幅を設定します。

パラメータ:
  $style  セルの上罫線のスタイル

セルの下の罫線:

セルの下罫線の幅を設定します。

パラメータ:
  $style  セルの下罫線のスタイル

セルの左の罫線:

セルの左罫線の幅を設定します。

パラメータ:
  $style  セルの左罫線のスタイル

セルの右の罫線:

セルの右罫線の幅を設定します。

パラメータ:
  $style  セルの右罫線のスタイル

いずれにメソッドの場合も引数には罫線の種類を指定します。1を指定すると常の罫線、2を指定すると太罫線となります。

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

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

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

$format =& $workbook->addFormat();
$format->setBorder(1);

$worksheet =& $workbook->addWorksheet('シート1');
$worksheet->writeString(0, 0, "こんにちは", $format);
$workbook->close();
?>

サンプルプログラム

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

sample23-1.php

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

$workbook = new Spreadsheet_Excel_Writer('./sheet/sample23-1.xls');
$worksheet =& $workbook->addWorksheet('シート1');

$format1 =& $workbook->addFormat();
$format1->setBorder(1);
$format2 =& $workbook->addFormat();
$format2->setBorder(2);
$format3 =& $workbook->addFormat();
$format3->setTop(1);
$format3->setRight(2);

$worksheet->writeString(1, 1, '罫線', $format1);
$worksheet->writeString(3, 1, '太罫線', $format2);
$worksheet->writeString(5, 1, '上と右', $format3);
$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/sample23-1.xls">Excelファイル</a></p>');
print('</body></html>');
?>

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

罫線の表示(setBorder, setTop, setBottom, setLeft, setRight)

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

罫線の表示(setBorder, setTop, setBottom, setLeft, setRight)

( Written by Tatsuo Ikura )