一、合併儲存格
二、取得儲存格物件
三、透過儲存格物件設值
一、合併儲存格
$objWorksheet->mergeCells("A1:B1"); $objWorksheet->setCellValue("A1", "電話簿");
二、取得儲存格物件
要將值填入儲存格中,最簡單的就是用 setCellValue() 直接指定儲存格位置及要填入的值,例如 :
$objWorksheet->setCellValue("B1","電話");
但是這種方式在某些情況下並不太好用,所以 PHPExcel 提供了其他的方式來完成這項工作。
首先,我們得取得儲存格物件,這可以透過 getCell() 或是 getCellByColumnAndRow() 來完成
$objCell = $objWorksheet->getCell("B1");或是
$objCell = $objWorksheet->getCellByColumnAndRow(1, 1);這兩行程式碼的效果是一樣的
在這要注意的是 Column(行) 是由 0 起算,也是是 A 為 0、B 為 1;Row(列) 則是由 1 起算
三、透過儲存格物件設值
取得儲存格物件後,就可以用 setValue() 來設值
$objCell->setValue("電話");
也可以用 method chaining 的方式,將以上二個步驟用以以下的方式來改寫:
$objWorksheet->getCellByColumnAndRow(1, 1)->setValue("電話");
比較完整的程式範例如下:
// 檔案名稱:phpexcel_example_02.php // 引入 PHPExcel 函式庫 include_once "Classes/PHPExcel.php"; //接著我們要生成一個 PHPExcel 物件來幫忙我們處理 Excel 檔案 $objPHPExcel = new PHPExcel(); // 將活頁簿裏的第一張工作表設為要操作的工作表 $objPHPExcel->setActiveSheetIndex(0); // 取得工作表物件 $objWorksheet = $objPHPExcel->getActiveSheet(); // 合併儲存格並將值填入儲存格中 $objWorksheet->mergeCells("A1:B1"); $objWorksheet->setCellValue("A1", "電話簿"); // 將值填入儲存格中 $objWorksheet->getCell("A2")->setValue("姓名"); $objWorksheet->getCell("B2")->setValue("電話"); $objWorksheet->getCellByColumnAndRow(0, 3)->setValue("王小明"); $objWorksheet->getCellByColumnAndRow(1, 3)->setValue("0911222333"); $objWorksheet->getCellByColumnAndRow(0, 4)->setValue("張小志"); $objWorksheet->getCellByColumnAndRow(1, 4)->setValue("0944555666"); $objWorksheet->getCellByColumnAndRow(0, 5)->setValue("陳小祥"); $objWorksheet->getCellByColumnAndRow(1, 5)->setValue("0977888999"); // 輸出 header header("Content-Type: application/vnd.ms-excel"); header("Content-Disposition: attachment;filename=test_02.xls"); header("Cache-Control: max-age=0"); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output');
範例檔 phpexcel_example_02.php
沒有留言:
張貼留言