0

sum数式を含む EXCEL ファイルを生成するときに、この問題が発生しています。

PHP コード:

$objPHPExcel->getActiveSheet()->setCellValue("I".$fila,"=SUMA(I17:I".($fila-1).")");

注:SUMAスペイン語では「合計」です..スペイン語の設定ではそのように機能します

Excelファイルを開くと、値が次のように表示されます:######

しかし、数式は正しいです。数式の後に入力するだけで、再計算されて正しくなります。

4

3 に答える 3

2

PHPExcel は内部的に英語を使用します。数式関数にスペイン語を使用している場合は、ローカルをスペイン語に設定する必要があります。そしてそれらを英語に翻訳して細胞に注入することができます。開発者ドキュメントのセクション 4.6.5 を参照してください (「フォーミュラのロケール設定」というタイトル)。

$locale = 'es';
$validLocale = PHPExcel_Settings::setLocale($locale);
if (!$validLocale) {
    echo 'Unable to set locale to '.$locale." - reverting to en_us<br />\n";
}

$formula = "=SUMA(I17:I".($fila-1).")";
$internalFormula = 
    PHPExcel_Calculation::getInstance()->translateFormulaToEnglish($formula);
$objPHPExcel->getActiveSheet()->setCellValue("I".$fila, $internalFormula);
于 2013-08-11T22:12:24.130 に答える