分かりやすく、使いやすく。

既存のエクセルファイルを編集して上書き保存する

スポンサーリンク

PHPExcel でファイルを開いて編集した後、上書き保存する手順は次の通りです。

  1. リーダーを作成して既存ファイルを読み込む
  2. ファイルを編集
  3. ライターを作成して既存ファイルを上書きする

サンプルコードは以下の通りです。読み込みと書き込みのファイルのパスを同じにすることで上書き保存することができます。

php(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//PHPExcelの読み込み
require_once("./Classes/PHPExcel.php");
 
//読み書きするファイルのパスを設定
$target_file = "test.xlsx";
 
//1. リーダーを作成して既存ファイルを読み込む
$obj_reader = PHPExcel_IOFactory::createReader('Excel2007');
$obj_book   = $obj_reader->load($target_file);
 
//2. ファイルを編集(先頭のシートのA1セルに文字列を書き込み)
$obj_sheet = $obj_book->getSheet(0);
$obj_sheet->setCellValue("A1", "Hello, PHPExcel!");
 
//3. ライターを作成して既存ファイルを上書きする(読み込んだファイルと同じパスを指定する)
$obj_writer = PHPExcel_IOFactory::createWriter($obj_book, 'Excel2007');
$obj_writer->save($target_file); 
スポンサーリンク