How to set money format in PhpSpreadSheet?

Brandon Asaph picture Brandon Asaph · Sep 11, 2018 · Viewed 14.8k times · Source

I'm using PHPSpreadSheet and I want to set money format for a cell. In PHPExcel you can do this by using the following lines...

$this->phpExcelObject->getActiveSheet()
     ->getStyle('D4')
     ->getNumberFormat()
     ->setFormatCode(\PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE);

I tried to this in PHPSpreadSheet, this is what i did...

$this->spreadsheet->getActiveSheet()
     ->getStyle('D4')
     ->getNumberFormat()
     ->setFormatCode('$ #,##0.00');

But it doesn't work. Any ideas? or am I doing it wrong? Thanks in advance.

Answer

Shawn Northrop picture Shawn Northrop · Oct 30, 2018

I was able to do the following with PHPSpreadsheet:

$spreadsheet->getActiveSheet()
    ->getStyle($thisCol)
    ->getNumberFormat()
    ->setFormatCode(PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_CURRENCY_USD_SIMPLE);

The format code for FORMAT_CURRENCY_USD_SIMPLE == '"$"#,##0.00_-'