PHPExcel:如何交替行颜色
PHPExcel : How to alternating rows color
我想在 PHPExcel 上创建交替的颜色行。例如 odd=no, even=color.
我的代码是:
$row = 4;
$excel->getActiveSheet()->getStyle('A4:I'.($row-1))->applyFromArray(
array(
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('rgb' => 'ccff99')
)
)
);
我对循环 if even=color else no color 感到困惑。
这是我的解决方案:
所以你把你的数据设置成Excel:
$excel->getActiveSheet()->fromArray($datas);
首先,对于 table header,我应用此填充和颜色(请注意,您必须更改 A1:I1 以使其符合您的需要)。
$excel->getActiveSheet()->getStyle('A1:I1')->applyFromArray(
array(
'fill' => array(
'type' => \PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('argb' => 'FFCCFFCC')
),
'borders' => array(
'bottom' => array('style' => \PHPExcel_Style_Border::BORDER_THIN),
'right' => array('style' => \PHPExcel_Style_Border::BORDER_MEDIUM)
)
)
);
然后,你做一个简单的循环来逐行着色。当然,你这次从第二行开始,当你达到数据计数时结束。
for ($i = 2; $i < count($sub); $i++) {
if ($i % 2 == 0) {
$excel->getActiveSheet()->getStyle('A' . $i . ':I' . $i)->applyFromArray(
array(
'fill' => array(
'type' => \PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('argb' => 'FFF3F3F3')
),
)
);
}
}
我想在 PHPExcel 上创建交替的颜色行。例如 odd=no, even=color.
我的代码是:
$row = 4;
$excel->getActiveSheet()->getStyle('A4:I'.($row-1))->applyFromArray(
array(
'fill' => array(
'type' => PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('rgb' => 'ccff99')
)
)
);
我对循环 if even=color else no color 感到困惑。
这是我的解决方案:
所以你把你的数据设置成Excel:
$excel->getActiveSheet()->fromArray($datas);
首先,对于 table header,我应用此填充和颜色(请注意,您必须更改 A1:I1 以使其符合您的需要)。
$excel->getActiveSheet()->getStyle('A1:I1')->applyFromArray(
array(
'fill' => array(
'type' => \PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('argb' => 'FFCCFFCC')
),
'borders' => array(
'bottom' => array('style' => \PHPExcel_Style_Border::BORDER_THIN),
'right' => array('style' => \PHPExcel_Style_Border::BORDER_MEDIUM)
)
)
);
然后,你做一个简单的循环来逐行着色。当然,你这次从第二行开始,当你达到数据计数时结束。
for ($i = 2; $i < count($sub); $i++) {
if ($i % 2 == 0) {
$excel->getActiveSheet()->getStyle('A' . $i . ':I' . $i)->applyFromArray(
array(
'fill' => array(
'type' => \PHPExcel_Style_Fill::FILL_SOLID,
'color' => array('argb' => 'FFF3F3F3')
),
)
);
}
}