2

我正在使用 PHPExcel 库: https ://github.com/PHPOffice/PHPExcel

我想为 C1 单元格设置一个公式:

$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A1', 5)
            ->setCellValue('B1', 6)
            ->setCellValue('C1', "=SUM(A1,B1)");

这很好用。

一旦我将公式更改为具有 + 或 - 运算符的公式,例如:

    ->setCellValue('C1', "=A1-B1");

代替

    ->setCellValue('C1', "=SUM(A1,B1)");

我收到以下错误:

第 2976 行 \phpexcel\PHPExcel\Calculation.php 中的非法字符串偏移“值”

接着

在第 3010 行的 \phpexcel\PHPExcel\Calculation.php 中的数组到字符串转换

查看 Calculation.php 代码 - 我发现它将引用 A1 和 B1 剪切为 A 和 B。

知道如何解决吗?谢谢!

  • Remark1:看起来没关系,但我更愿意提到我在计算机上安装了西班牙版本的 Excel。

  • Remark2:在我在 PHPExcel GitHub 上找到的示例中,所有公式都没有运算符,只使用了函数。

4

2 回答 2

0

我知道那是两年多前的事了,但我有同样的错误(但只是第一个错误,带有“...line 2976”)并为你找到了一些东西

知道如何解决吗?

@Alexander @Mark Ba​​ker 对于那些无法更新的人,或者对于Mark Ba​​ker 来说,它似乎与 "(" 和 ")" 一起工作

所以像这样:

->setCellValue('C1', "=(A1-B1)");
于 2015-11-30T16:34:52.373 回答
0

我在使用 PHPExcel 1.7.6 版尝试使用任何数学运算符(例如加法、乘法、除法或减法)时遇到了完全相同的错误。我升级到最新版本为我解决了这个问题。

于 2015-10-20T22:42:52.453 回答