繁体   English   中英

PHPExcel条件格式逐行关闭

[英]PHPExcel conditional formatting off by one row

由于某种原因,我的条件格式关闭了一行,我无法弄清原因。

这是代码:

$conditional = new PHPExcel_Style_Conditional();                                                                                
$conditional->setConditionType(PHPExcel_Style_Conditional::CONDITION_CONTAINSTEXT);                                             
$conditional->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_CONTAINSTEXT);                                               
$conditional->setText('~?');                                                                          
$conditional->getStyle()->getFill()->applyFromArray(array('type' => PHPExcel_Style_Fill::FILL_SOLID, 'endcolor' => array('rgb' => '7FA0D1')));  

...

$conditionalStyles = $objPHPExcel->getActiveSheet()->getStyle('A:J')->getConditionalStyles();
array_push($conditionalStyles, $conditional);
$objPHPExcel->getActiveSheet()->getStyle('A:J')->setConditionalStyles($conditionalStyles);

在生成的电子表格中,我有

?
A

由于某种原因,它格式化A而不是? 它上面。 如果我进入Excel的条件格式“管理规则”,请选择此规则,“编辑规则”,单击“确定”而不进行任何更改,然后在主窗口中单击“确定”,它会自行修复。 所以我不确定为什么在第一次加载时就关闭了?

PHPExcel不支持行和列样式,因此getStyle调用中的'A:J'范围无效。 仅支持单元格样式,因此,您需要指定单元格范围

例如

$conditionalStyles = $objPHPExcel
    ->getActiveSheet()
    ->getStyle('A1024:J1024')
    ->getConditionalStyles();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM