有没有办法用Laravel excel 3.1冻结excel的第一行



我在Laravel 5.8项目中使用maatewebsite/excel 3.1。

导出excel时,我需要将第一行设置为固定。2.1版本中称为"冻结行"的内容。

Excel::create('Filename', function($excel) {
$excel->sheet('Sheetname', function($sheet) {
$sheet->freezeFirstColumn();
});
})->export('xls');

由于版本3,您应该使用PhpSpreadsheet的本地方法。

你可以试试这样的东西:

class SomeExport implements ... // what you need to implement 
{
// some other code

public function registerEvents(): array
{
return [
AfterSheet::class => function(AfterSheet $event) {
$workSheet = $event->sheet->getDelegate();
$workSheet->freezePane('A2'); // freezing here
},
];
}
}

您可以在这里找到更多信息:

升级:https://docs.laravel-excel.com/3.0/getting-started/upgrade.html

事件:https://docs.laravel-excel.com/3.1/imports/extending.html#events

最新更新