Подтвердить что ты не робот

Тип данных типа phpexcel для диапазона ячеек

С PHPExcel, я использую:

$workSheet->fromArray($array);

Чтобы установить мои данные. Тем не менее, один столбец должен быть установлен как строка (число с начальным нулем, ведущий нуль обрезается, если не установлен в строку). Если я не использовал метод fromArray, я мог бы установить тип данных с помощью PHPExcel_Worksheet::setCellValueExplicit().

Однако я хочу сделать это, используя ряд столбцов. В идеале что-то вроде этого:

$worksheet->getCell('A1:A50')->setDataType(PHPExcel_Cell_DataType::TYPE_STRING);

Но, глядя на код, getCell не позволит диапазон, а только одну ячейку. Как я могу это сделать?

4b9b3361

Ответ 1

В PHPExcel не существует метода, который позволит вам установить тип данных для диапазона ячеек, только для отдельной ячейки.

Существует несколько вариантов... сложнее было бы написать настраиваемое связующее значение соты, которое автоматически устанавливает тип данных для этих ячеек, когда значение ячейки задается функцией fromArray().

Что вы могли бы сделать вместо этого (и намного проще), это оставить тип данных как число и значение как числовое, но установить маску формата номера, которая сообщает Excel, чтобы отображать числа с ведущими нулями.

$objPHPExcel->getActiveSheet()->getStyle('L3:N2048')
                              ->getNumberFormat()->setFormatCode('0000');