[TOC]
### 一、單元格值設置
~~~
//Add some data 添加數據
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello');//可以指定位置
$objPHPExcel->getActiveSheet()->setCellValue('A2', true);
$objPHPExcel->getActiveSheet()->setCellValue('A3', false);
$objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!');
$objPHPExcel->getActiveSheet()->setCellValue('B3', 2);
$objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello');
$objPHPExcel->getActiveSheet()->setCellValue('D2', 'world!');
//循環
for($i = 1;$i<200;$i++) {
$objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $i);
$objPHPExcel->getActiveSheet()->setCellValue('B' . $i, 'Test value');
}
//日期格式化
$objPHPExcel->getActiveSheet()->setCellValue('D1', time());
$objPHPExcel->getActiveSheet()->getStyle('D1')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH);
//Add comment 添加注釋
$objPHPExcel->getActiveSheet()->getComment('E11')->setAuthor('PHPExcel');
$objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('PHPExcel:');
$objCommentRichText->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun("\r\n");
$objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('Total amount on the current invoice, excluding VAT.');
~~~
### 二、單元格格式設置
~~~
//實例化對象
$objPHPExcel = new \PHPExcel();
//設置工作簿的名稱
$objPHPExcel->getActiveSheet()->setTitle('預算經費表');
//合并單元格
$objPHPExcel->getActiveSheet()->mergeCells('A1:H1');
//拆分單元格
$objPHPExcel->getActiveSheet()->unmergeCells('A1:H1');
//設置單元格字體
$objPHPExcel->getActiveSheet()->getStyle('A2')->getFont()->setName('宋體')
//字體
->setSize(12) //字體大小
->setBold(true); //字體加粗
//設置行的高度
$objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(31.5);
$objPHPExcel->getActiveSheet()->getRowDimension('2')->setRowHeight(31.5);
$objPHPExcel->getActiveSheet()->getRowDimension('3')->setRowHeight(69.75);
//長度不夠顯示的時候 是否自動換行
$objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->setWrapText(true);
//自動轉換顯示字體大小,使內容能夠顯示
$objPHPExcel->getActiveSheet()->getStyle('B5')->getAlignment()->setShrinkToFit(true);
//凍結標題
//第一種方式
//$objPHPExcel->getActiveSheet()->freezePane('A1');
//$objPHPExcel->getActiveSheet()->freezePane('A2');
//第二種方式
$objPHPExcel->getActiveSheet()->freezePaneByColumnAndRow(8,4);//(列,行)凍結的行數比你設置的要多一行(例 我需要設置的 是 3行 那么 參數就要寫 4)
//設置水平居中
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
//垂直居中
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER); $objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
//左對齊
$objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
//右對齊
$objPHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal(\PHPExcel_Style_Align
~~~
### 三、單元格邊框設置
~~~
//設置邊框
$objPHPExcel->getActiveSheet()->getStyle('A1:H8')->getBorders()->getAllBorders()->setBorderStyle(\PHPExcel_Style_Border::BORDER_THIN);
~~~
### 四、單元格綜合樣式設置
~~~
$style_Array=array(
'font' => array (
'bold' => true
),
'alignment' => array (
'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_RIGHT ,
),
'borders' => array (
'top' => array (
'style' => PHPExcel_Style_Border::BORDER_THIN
)
),
'fill' => array (
'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR ,//填充樣式
'rotation' => 90,//填充顏色的方向
'startcolor' => array (
'argb' => 'FFA0A0A0' //起始顏色
),
'endcolor' => array (
'argb' => 'FFFFFFFF' //結束顏色
)
)
);
$objPHPExcel->getActiveSheet()->getStyle( 'A3:E3')->applyFromArray(
$style_Array
);
~~~
最終樣式結果為
單色填充
~~~
$fill_Array=array(
'fill' => array (
'type'=>PHPExcel_Style_Fill::FILL_SOLID,
'startcolor' => array (
'argb' => 'FFD9E1F9'
),
);
~~~
