PHP PHPExcel セルに値をセットする

-


Topページ  >  お勉強  >  PHP  >  セルに値をセットする 

セルに値をセットする

PHPExcelを使用して、指定したセルに値をセットする(書き込む)方法です。

A1参照形式でセルを指定するsetCellValueメソッドも存在しますが、実務ではR1C1参照形式でセルを指定することが多いと思いますので、ここではsetCellValueByColumnAndRowメソッドを使用します。
(R1C1参照形式と言いつつ、列指定の際のインデックスは0から始まります。しかし、なぜか行指定の際のインデックスは1から始まっていますので、混乱しないように注意してください。)

記述されている例文は、ダウンロードしたPHPExcel内のClassesフォルダが、対象のPHPと同フォルダに置いてある前提です。





1. ブックを新規作成して、セルに値をセットしてファイル出力します。

セルA1 … 文字列をセット
セルB2 … 数値をセット
セルC3 … 真偽値をセット
セルD4 … 日付をセット

[出力されたExcelファイル]

注意)全角文字のフォント名を指定する場合、PHPファイルの文字エンコードをUTF-8にしておく必要があります。

// 必要なクラスをインクルードする
set_include_path(get_include_path() . PATH_SEPARATOR . "./Classes/");
include "PHPExcel.php";
include "PHPExcel/IOFactory.php";

// PHPExcelオブジェクトを生成する
$book = new PHPExcel();


// シートの設定を行う
$book->setActiveSheetIndex(0);
$sheet = $book->getActiveSheet();

// セルに値をセットする
$sheet->setCellValueByColumnAndRow(0, 1, "文字列!");
$sheet->setCellValueByColumnAndRow(1, 2, 12345);
$sheet->setCellValueByColumnAndRow(2, 3, true);
$sheet->setCellValueByColumnAndRow(3, 4, date("Y/m/d"));

// Excel2007形式で保存する
$writer = PHPExcel_IOFactory::createWriter($book, "Excel2007");
$writer->save("./output3.xlsx");




setCellValueByColumnAndRow( columnIndex, rowIndex, writeString );


columnIndex 書き込みを行うセルの列インデックスを指定します。
0からスタートします。
rowIndex 書き込みを行うセルの行インデックスを指定します。
こちらは1からスタートします。
writeString セルに書き込みを行う文字列を指定します。





Topページ  >  お勉強  >  PHP  >  セルに値をセットする 






-