使用phpspreadsheet,我要将白色背景设置为excel单元格。
$cells='A1';
$spreadsheet->getActiveSheet()->getStyle($cells)->getFill()-
>setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)-
>getStartColor(' #FFFFFF')->setARGB('#FFFFFF');
即使我将白色rgb值设置为#FFFFFF,此代码也会使单元格背景变黑。
我想要的结果,
谢谢。
答案 0 :(得分:4)
通过使用样式数组一次设置几种样式:
styleArray = array(
'borders' => array(
'outline' => array(
'borderStyle' => Border::BORDER_THICK,
'color' => array('argb' => '00000000'),
),
),
'fill' => array(
'fillType' => Fill::FILL_SOLID,
'startColor' => array('argb' => 'FF4F81BD')
)
);
$spreadsheet->getActiveSheet()->applyFromArray($styleArray);
在某些示例中,我们找到“ fill”而不是“ fillType”。也许这取决于phpSpreadsheet的版本。另一个变体是“颜色”而不是“ startColor”。
答案 1 :(得分:0)
在phpspreadsheet中指定ARGB时,无需包含符号“#”。 这个可以将单元格背景设置为白色。
$spreadsheet->getActiveSheet()->getStyle($cells)->getFill()->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)->getStartColor()->setARGB('ffffff');
$spreadsheet->getActiveSheet()->getStyle('A1:A5')->getFill()->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)->getStartColor()->setARGB('ffffff');