PHPexcel公式IFERROR

问题描述:

我使用PHP excel 1.8.0。我到处搜索,但我不明白为什么下面的错误发生,我的Excel文件已损坏。PHPexcel公式IFERROR

Uncaught exception 'PHPExcel_Calculation_Exception' with message 'Worksheet!K2 -> Formula Error: An unexpected error occured' 

我必须使用ISO 8859-2编码

$formula = iconv('ISO-8859-2', 'UTF-8//IGNORE//TRANSLIT', '=IFERROR(IF(OR(C'.$row.'="string1";C'.$row.'="strin2");D'.$row.';" ");" ")'); 
$objPHPExcel->getActiveSheet()->setCellValue($where, $formula); 

我尝试设置式无=。之后,当我打开我的Excel文件时,所有公式都设置正确,没有=标记。然后,如果我手动将它添加到公式,它的工作原理。但有了你可以看到的代码,公式就被破坏了。 我也曾尝试加入=后,我用iconv,但没有任何改变文件仍然被打破。如果有人能够帮助我解决这个问题,我会很高兴。

PHPExcel documentation

写公式到单元格

里面的Excel文件,公式始终存储,因为它们将出现在英文版本的Microsoft Office Excel,和PHPExcel以这种格式内部处理所有公式。这意味着以下规则成立:

  • 小数点分隔符是'。' (句点)
  • 函数参数分隔符是','(逗号)
  • 矩阵行分隔符是';' (分号)
  • 英文函数名称必须使用

这是无论Microsoft Office Excel中的语言版本可能已被用于创建Excel文件。

您使用分号(;)作为函数参数的分隔符

+0

非常感谢你 –