Intereting Posts
jQuery: как остановить функцию AJAX, избегая строки JSON, используемой для данных POST Передайте данные формы на другую страницу с помощью php QHttpMultiPart: отправлять файлы в скрипт PHP Почему я получаю undefined index при использовании cookie в PHP? Скопировать файлы в другую папку PHP Проблема с соединением Db2 с IBM DB2 Атрибут переменной атрибута: настройка каждого отображаемого текстового значения кнопок радио PHP-совместимые решения NoSQL Разбор RSS-ленты с использованием PHP для вставки в мой SQL-запрос Как изменить ошибку, отображаемую в codeigniter Динамическое заполнение статической переменной в PHP Как правильно использовать маркеры-носители? Изменение имени переменной (нумерация) или добавление чисел в переменную в порядке возрастания для присвоения значений Как анализировать данные GET URL, имеющие URL-адрес, хранящийся в переменной? PHP запутан при добавлении и конкатенации

Установка ширины ячейки электронных таблиц с помощью PHPExcel

Я пытаюсь установить ширину ячейки в документе Excel, сгенерированном с помощью PHPExcel, с:

$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setWidth('10'); $objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setAutoSize(false); 

но это не работает.

Какой метод мне нужно вызвать здесь?

Это тонкая разница, но это отлично подходит для меня:

 $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10); 

Обратите внимание: разница между getColumnDimensionByColumn и getColumnDimension

Кроме того, я даже не устанавливаю AutoSize, и он отлично работает.

Привет, у меня такая же проблема. Добавьте 0.71 к значению ширины ячейки excel и дайте это значение

 $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10); 

например: A Ширина столбца = 3,71 (значение excel)

укажите ширину столбца = 4.42

будет выдавать выходной файл с той же шириной ячейки.

 $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(4.42); 

надеюсь эта помощь

Метод setAutoSize должен появиться до setWidth:

 $objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setAutoSize(false); $objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setWidth('10'); 

Это потому, что getColumnDimensionByColumn получает индекс столбца (целое число начиная с 0), а не строку.

То же самое касается setCellValueByColumnAndRow

Правильный способ установки ширины столбца – это использовать строку, опубликованную Jahmic, однако важно отметить, что дополнительно необходимо применять стиль после добавления данных, а не раньше, иначе в некоторых конфигурациях ширина столбца равна не применяется

Это сработало для меня:

 $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(false); $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(10); 

обязательно добавьте setAuzoSize(false) , перед setWidth(); как сказал Роллан