SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

PHPExcelで罫線が表示されない

問題

PHPExcelで以下のようにしましたが罫線が表示されないです。

$sheet->getStyle('A4:N4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$sheet->getStyle('B6:Y6')->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

答え

setBorderStyleだけでは罫線が表示されないことがある。

getColor して setRGB しても効かないこともあるらしい。

結局以下の書き方でapplyFromArrayするのが無難というかちゃんと反映される。

$book = PHPExcel_IOFactory::load('template.xlsx');
$sheet = $book->getActiveSheet();
$sheet->getStyle('B6:Y6')->applyFromArray(array(
	'borders' => array(
		'allborders' => array(
			'style' => PHPExcel_Style_Border::BORDER_THIN,
			'color' => array('rgb' => '000000')
		),
	)
));
$book = PHPExcel_IOFactory::load('template.xlsx');
$sheet = $book->getActiveSheet();
$sheet->getStyle('B6:Y6')->applyFromArray(array(
	'borders' => array(
		'right' => array(
			'style' => PHPExcel_Style_Border::BORDER_DOTTED,
			'color' => array('rgb' => '000000')
		),
	)
));

関連するメモ

コメント