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 がコンピューターにインストールされていることについて言及したいと思います。

  • 注意 2: PHPExcel GitHub で見つけた例では、すべての式に演算子がなく、関数のみが使用されています。

4

2 に答える 2

0

私はそれが2年以上前であることを知っていますが、同じエラーがあり(ただし、最初の「... 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 に答える