2

列の値をパーセント記号で小数点以下 2 桁に切り上げるために使用する関数を教えてください。例: 1.88230293 の代わりに 1.88%

$worksheet_details->setCellValue("D14", "=SUM((F33 / F34))");

セル D14 の値を切り上げるにはどうすればよいですか?


解決:

ちなみに、インターネットから解決策を探し続けた後、これを手に入れました...

$percentageFormat = '#.## \%;[Red]-#.## \%';
$worksheet_details->setCellValue("C14", "=SUM((C33 / C34) * 100)");
$worksheet_details->getStyle('C14')->getNumberFormat()->setFormatCode($percentageFormat);

0.xx 形式で表示する場合は、最初の # を 0 に変更するだけです...そうしないと、.xx のみが表示されます

4

6 に答える 6

4

文字列として出力したいだけの場合:

echo '%'.number_format($your_number,2);

数値の浮動小数点値として保持したい場合 (ただし、パーセンテージで妥協):

echo round($your_number,2);

Excel 関数を探している場合は、次を使用します。

$worksheet_details->setCellValue('D14', '=TEXT(F33/F34,"0.00%")');
于 2012-04-04T01:39:42.860 に答える
2

関数を探していると思いますROUND()

=ROUND(10/3; 2)

または、あなたの場合:

$worksheet_details->setCellValue("D14", "=ROUND(SUM((F33 / F34)); 2)");
于 2012-04-04T01:55:56.133 に答える
1

PHP で丸めたい場合は、 round()を使用して、必要な浮動小数点数の精度を指定できます。

echo round(1.95583, 2) . "%";  // 1.96%

Excel で丸める場合は、ROUND 関数を使用できます。

$worksheet_details->setCellValue("D14", "=TEXT(SUM((F33 / F34)), '###.##%')");

また

$worksheet_details->setCellValue("D14", "=TEXT(SUM((F33 / F34)/100), '###.##%')");

数値がすでにパーセンテージである場合。

それが役に立てば幸い。

于 2012-04-04T01:42:08.183 に答える
0

@ariefbayuが言ったように、

$worksheet_details->setCellValue("D14", "=ROUND(SUM((F33 / F34)); 2)");

動作するはずですが、私にはエラーがスローされました:

PHP Fatal error:  Uncaught PHPExcel_Calculation_Exception

だから私は を に変更し;ました,

結果:

$worksheet_details->setCellValue("D14", "=ROUND(SUM((F33 / F34)), 2)");
于 2019-10-18T14:21:54.540 に答える