现在我希望将phpexcel中的单元格的文本颜色设置为foreach循环。 foreach循环类似于:
$redBold = array(
"font" => array(
"bold" => true,
"color" => array("rgb" => "FF0000"),
),
);
$row = 5;
$count = 0
foreach ($data as $key => $value) {
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($count++, $row, $value['type']?$value['type']:0);
if ($value['type'] == 1) {
$objPHPExcel->getActiveSheet()->getStyle($count . $row)->applyFromArray($redBold);
}
}
此代码无法理解getStyle($count . $row )
,因为$count . $row
应为A6
...在这种情况下是否可以设置文字?请帮忙!
答案 0 :(得分:3)
连接$count . $row
时会得到什么?
getStyle()
要求细胞参考(例如A1
,C3
,IV256
)或细胞范围(例如A1:C3
,B2:D4
,A2:IV256
等。
你只是连接两个数字,例如0
和5
提供05
,这在单元格引用/范围方面毫无意义
在连接之前,您需要将$count
(您用作列索引)转换为实际列地址
$objPHPExcel->getActiveSheet()->getStyle(PHPExcel_Cell::stringFromColumnIndex($count) . $row)->applyFromArray($redBold);
另请注意,您正在使用后增量运算符增加列尝试设置单元格的样式,因此它可能不会为您提供单元格引用想