web-dev-qa-db-ja.com

PHPExcelでセルをパーセンテージにフォーマットする

PHPを使用してExcelスプレッドシートを自動化しています。

PHPExcelでセルを実用的なパーセンテージにフォーマットする方法を探していました。

次のような値を変更したい

0.077922078

8%

これに対する解決策はありますか?

前もって感謝します。

18
cwiggo

あなたの細胞がA1であると仮定すると..

$objPHPExcel->getActiveSheet()->getStyle('A1')
    ->getNumberFormat()->applyFromArray( 
        array( 
            'code' => PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00
        )
    );
39
user557846

PHPExcelライブラリには、いくつかの基本的なフォーマット定数のみが事前定義されています。実際には、ほとんどすべての目的(着色、小数の書式設定、数千など)で独自に作成できます。 Excelのフォーマット機能は巨大です。以下は、小数点以下3桁でパーセントをフォーマットし、負の値を赤に着色します。

$workSheet
    ->getStyleByColumnAndRow($column, $row)
    ->getNumberFormat()
    ->setFormatCode('0.000%;[Red]-0.000%');
2
lubosdz

あなたはこのコードを試すことができます:

$colLetter = "A";
$rowNumber = "1";

$objPHPExcel->getActiveSheet()
    ->getStyle("$colLetter:$rowNumber")
    ->getNumberFormat()
    ->applyFromArray([
        "code" => PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE
    ]);
0
simhumileco