Mettre du style sur les feuilles de calcul avec Laravel Excel
Bonjour,
Je poste ce message en raison d'un problème de styles pour mes feuilles de calcul générées via Laravel Excel. Lorsque j'essaie d'appliquer un style (des bordures dans cet exemple), le style n'est pas reconnu et ne s'affiche pas sur la feuille de calcul. Je vous envoie mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| function registerEvents(){
return [
BeforeExport::class => function(BeforeExport $event) {
$event->getDelegate()->setCreator('Patrick');
},
AfterSheet::class => function(AfterSheet $event) {
$event->getDelegate()->setOrientation(\PhpOffice\PhpSpreadsheet\Worksheet\PageSetup::ORIENTATION_LANDSCAPE);
$event->getDelegate()->styleCells(
'B2:G8',
[
'borders' => [
'outline' => [
'borderStyle' => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THICK,
'color' => ['argb' => 'FFFF0000'],
],
]
]
);
},
];
}
function excel()
{
$donneesRes = DB::table('reservations')->get()->toArray();
$donneesTab[] = array('N° semaine', 'Date', 'Heure de début', 'Heure de fin', 'Cours', 'Horaire', 'Local');
Sheet::macro('style', function (Sheet $sheet, string $cellule, array $style){
$sheet->getDelegate()->getStyle($cellule)->applyFromArray($style);
});
foreach($donneesRes as $donnee)
{
$donneesTab[] = array(
'N° semaine' => $donnee->numero_semaine,
'Date' => $donnee->date,
'Heure de début' => $donnee->heure_debut,
'Heure de fin' => $donnee->heure_fin,
'Cours' => $donnee->Event_id,
'Horaire' => $donnee->horaire_id,
'Local' => $donnee->local_id
);
}
$export = new ReservationExport();
return Excel::download($export, "horaire.xlsx");
} |
Merci à vous et bonne journée.