PHPOffice/PHPExcel PHPExcel_Style_NumberFormat FORMAT_CURRENCY_USD_SIMPLE правильный способ использовать это.

Я пытаюсь использовать FORMAT_CURRENCY_USD_SIMPLE .

Я могу использовать даты, целые и общие успешно. Но у меня проблемы с этим.

Содержание моей ячейки может быть таким.

Здесь вы можете видеть, что я использую "75,00 $" - это мой сотовый контент. Я добавляю $ в качестве содержимого моей ячейки, когда получаю эти данные из моего запроса.

Является ли CONTENT значением CELL, которое мы помещаем в setCellValueByColumnAndRow, должно быть без "$" или с "$". Я пробовал это с "$".

ДОКУМЕНТЫ

Я не пробовал без "$".

Итак, какой будет правильный контент и какой будет правильный формат кода.

Я использовал "FORMAT_CURRENCY_USD_SIMPLE", "FORMAT_CURRENCY_USD", ""$"#,##0,00_- (напрямую), '$#,##0_-' (прямо сейчас).

Все мои номера будут равны $1356,25. Если вы будете следовать этой структуре.

Какой код формата я должен использовать для значения контента, как это.

Мой код, работает с датой и числами.

$areaOfExcel = $column_alphabet.$row_start_data.":".$column_alphabet.$excel_current_row_index ;
$this->excel_active_sheet->getStyle( $areaOfExcel )
                ->getNumberFormat()
                ->setFormatCode( $dataTypeFromAdoDb );

Моя главная проблема в том, какой должен быть правильный формат кода или какой должен быть правильный контент. использовать знак $ и правильно их отформатировать.

1 ответ

Решение

Значением содержимого в ячейке должно быть простое число с плавающей запятой, без кода валюты, без разделителя тысяч и т. Д.... в точности так, как это должно быть в самом MS Excel, если вы хотите использовать маску числа в формате валюты.

$value = 1234.56; // float value

$objPHPExcel->getActiveSheet()
    ->setCellValue('A1', $value);
$objPHPExcel->getActiveSheet()
    ->getStyle('A1')
    ->getNumberFormat()
    ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_USD_SIMPLE);
Другие вопросы по тегам