Search code examples
phpphpexcelphpspreadsheet

How to set money format in PhpSpreadSheet?


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.


Solution

  • I couldn't do it with PHPSpreadSheet. In case someone runs with the same problem, this is what I did (not a proper solution but it's something).

    I created a function to return the value with the money symbol.

    public function formatValueMoney($number){
      $val = number_format($number,2,".",",");
      $setVal = '$'.$val;
    
      return $setVal;
    }
    
    $int = formatValueMoney(34567898765);
    echo $int;
    

    and this : $34,567,898,765.00 is the result. i just added this in the cell.