【问题标题】:PHPExcel: Coloring the cells?PHPExcel:为单元格着色?
【发布时间】:2012-04-05 16:09:00
【问题描述】:

我正在使用 PHPExcel 在我的服务器上生成一些工作表。或多或少一切正常,但是,当我尝试为某些行着色(每隔一行,因此列表很容易阅读)时,我得到了有趣的事情:该行颜色正常,但仅在未填充的单元格上数据。填满数据的单元格保持白色。

这是我使用的代码

            $ind = ($ind + 1) % 2;

            if($ind == 1)
            {
                $style_header = array(                  
                'fill' => array(
                    'type' => PHPExcel_Style_Fill::FILL_SOLID,
                    'color' => array('rgb'=>'CCC'),
                ),
                'font' => array(
                    'bold' => true,
                )
                );
                $sheet->getStyle($row)->applyFromArray( $style_header );

            }

            $sheet->getCellByColumnAndRow(0, $row)->setValue($item['qty']);
            $sheet->getCellByColumnAndRow(1, $row)->setValueExplicit($item['name']);
            $sheet->getCellByColumnAndRow(2, $row)->setValueExplicit($item['size']);
            $sheet->getCellByColumnAndRow(3, $row)->setValueExplicit($item['color']);

我做错了什么?

【问题讨论】:

    标签: phpexcel


    【解决方案1】:

    我看不出有什么不对劲的地方。粗体字体是否应用于带有文本的单元格,还是整个样式被忽略?如果设置了粗体,请尝试翻转数组中“填充”和“字体”的顺序。不过,我认为这不会有什么不同。

    您也可以尝试$sheet->getStyle('A$row:D$row')->...,只是为您正在使用的单元格范围而不是整行明确设置样式。

    【讨论】:

    • 嘿,谢谢你的提示,$sheet->getStyle('A$row:D$row') 效果很好。我不知道为什么它不能工作,但它不再重要了。
    【解决方案2】:
    猜你喜欢
    • 2013-03-14
    • 1970-01-01
    • 1970-01-01
    • 2013-01-09
    • 2011-08-19
    • 2016-05-08
    • 1970-01-01
    • 2013-09-01
    相关资源
    最近更新 更多