我使用以下方法setCellValueByColumnAndRow()
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($col,$xlsRow,$plan);
现在我的要求是为此设置背景颜色。
我无法使用以下方法,因为我与行号和列号对齐。
$objPHPExcel->getActiveSheet()->getStyle("A1")->getFill()
->setFillType(PHPExcel_Style_Fill::FILL_SOLID)
->getStartColor()->setRGB($color);
我正在寻找提供cols和行的方法,因为(2,3)不喜欢(' A1:E1')
请使用列号和行号建议另一种设置背景颜色的方法。
答案 0 :(得分:4)
您无法在PHPExcel中设置一行样式,只能设置一个单元格或一系列单元格
$objPHPExcel->getActiveSheet()
->getStyle('A1:E1')
->getFill()
->setFillType(PHPExcel_Style_Fill::FILL_SOLID)
->getStartColor()
->setARGB('FF808080');
或
$objPHPExcel->getActiveSheet()
->getStyle('A1:E1')
->applyFromArray(
array(
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('rgb' => 'E05CC2')
)
)
);
将设置单元格A1到E1的背景填充样式
答案 1 :(得分:2)
PHPExcel_Cell :: stringFromColumnIndex(0);工作得很好。
$column = PHPExcel_Cell::stringFromColumnIndex(45);
$row = 1;
$cell = $column.$row;
$ cell会给你AT1 $ range =' A1:'。$ cell; 因此,您可以轻松地进入填充范围,例如。
$objPHPExcel->getActiveSheet()->getStyle($range)->getFill()->applyFromArray(array(
'type' => PHPExcel_Style_Fill::FILL_SOLID,
'startcolor' => array(
'rgb' => 'FFFF00' //Yellow
)
));