phpexcel动态设置特定单词的字体颜色

时间:2015-06-18 09:45:30

标签: php phpexcel

我想在创建excel时更改特定单词的字体颜色。例如,在我的excel文件中,一些单元格包含单词" Hello "。我想突出特定细胞。要设置字体颜色,

$phpExcel->getActiveSheet()->getStyle('A1')->getFont()->setColor( $phpColor );

但问题是我不具备那个细胞的位置。所以我想我需要找出那个单词的单元格位置。有什么办法吗?

更新

我通过传递数组(带有值的标题)来创建excel文件。我的阵列如下 的 头:

 Array
    (
        [0] => Array
            (
                [0] => id
                [1] => type
                [2] => attributesetname
                [3] => language
                [4] => name

值:

[1] => Array
        (
            [0] => 225
            [1] => object
            [2] => Clothing
            [3] => en
            [4] => polo shirts

然后继续。

创建excel文件,

$objPHPExcel = new PHPExcel();
        header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
        header("Content-Disposition: attachment; filename=\"mot_export.xlsx\"");
        header("Cache-Control: max-age=0");
// Fill worksheet from values in array
        $objPHPExcel->getActiveSheet()->fromArray($result, null, 'A1');

        // Rename worksheet
        $objPHPExcel->getActiveSheet()->setTitle('mot_export');

        // Save Excel 2007 file
        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
        $objWriter->save("php://output");

我想在excel中更改单词 object 的颜色。

UPDATE2: 我试过条件格式,但它没有用。

try {

        // Create new PHPExcel object
        $objPHPExcel = new PHPExcel();
        header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
        header("Content-Disposition: attachment; filename=\"mot_export.xlsx\"");
        header("Cache-Control: max-age=0");

        // Fill worksheet from values in array
        $objPHPExcel->getActiveSheet()->fromArray($result, null, 'A1');


        $objConditional1 = new PHPExcel_Style_Conditional();
        $objConditional1->setConditionType(PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT)
                        ->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT)
                        ->setText("object");

        $objConditional1->getStyle()->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID)->getEndColor()->setARGB(PHPExcel_Style_Color::COLOR_GREEN);


        $conditionalStyles = $objPHPExcel->getStyle('B')->getConditionalStyles();

        array_push($conditionalStyles, $objConditional1);

        $objPHPExcel->getStyle('B')->setConditionalStyles($conditionalStyles);

        // Rename worksheet
        $objPHPExcel->getActiveSheet()->setTitle('mot_export');

        // Save Excel 2007 file
        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
        $objWriter->save("php://output");
        }catch (Exception $e) {

        }

0 个答案:

没有答案