如何使用PHPExcel

时间:2015-06-04 08:57:35

标签: php phpexcel

我正在尝试使用PHPExcel为重复值设置条件格式。

班级PHPExcel_Style_Conditional几乎导出Excel中可用的所有条件,例如OPERATOR_GREATERTHANOPERATOR_LESSTHAN等,但我找不到任何格式化重复值的内容,如下所示:

enter image description here

我知道,我可以自己检查重复项并相应地格式化它们,但使用Excel自己的功能集会更加优雅。

有谁知道怎么做?

1 个答案:

答案 0 :(得分:2)

在深入研究PHPExcel的代码之后,我发现这个条件类型还不支持。

所以我自己添加了它并为它创建了拉取请求:PHPExcel - PR: Add support for conditionally formatting duplicate values

我会在合并后立即更新此答案。

如果您是住院病人,您可以自行暂时执行PR的两项(非常小的)更改。之后,您可以将重复值的条件格式添加到Excel表格中,如下所示:

$conditional = new PHPExcel_Style_Conditional();
$conditional->setConditionType(PHPExcel_Style_Conditional::CONDITION_DUPLICATEVALUES);
$conditional->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED);

$style = $sheet->getStyle('A1:A10');

$conditionalStyles = $style->getConditionalStyles();

array_push($conditionalStyles, $conditional);
$style->setConditionalStyles($conditionalStyles);