我尝试在我的问题上应用this solution,但没有结果。
我的excel文件的列不是所有想要的宽度。我不明白的是,对于其中一些人来说,最大宽度是在标题行上,而不是来自任何类型的公式。
设置宽度的代码:
$ews->setAutoFilter($ews->calculateWorksheetDimension());
//formatto le colonne per la larghezza automatica
foreach(range('A','EK') as $columnID) {
$ews->getColumnDimension($columnID)->setAutoSize(true);
}
在他的回答中@Mark Baker说要获得更可靠的结果,我们应该使用这种方法:
PHPExcel_Shared_Font::setAutoSizeMethod(PHPExcel_Shared_Font::AUTOSIZE_METHOD_EXACT);
即使速度较慢且不适用于所有输出文件格式(我的是xlsx,所以它还可以)。我想念的是我应该在我的代码中启用此AutoSizeMethod的位置。 编辑:尝试编辑我的代码,以便: PHPExcel_Shared_Font :: setAutoSizeMethod(PHPExcel_Shared_Font :: AUTOSIZE_METHOD_EXACT); $&ews- GT; setAutoFilter($ ews-与GT; calculateWorksheetDimension()); // formatto le colonne per la larghezza automatica foreach(范围(' A',' EK')为$ columnID){ $ ews-> getColumnDimension($ ColumnID的) - GT; setAutoSize(真); } 但栏宽没有任何变化