Как реализовать создание «сложной» таблицы с помощью PhpSpreadsheet?

Подскажите, как реализовать создание "сложной" таблицы, через библиотеку PhpSpreadsheet. Должна получиться примерно такого вида:

введите сюда описание изображения

То есть колонки: "Поле 2", "Поле 3" могут иметь различное количество ячеек (в зависимости от входящих данных). Сколько не пытался, с мог добиться только такого результата:

введите сюда описание изображения

$data = $this->getData();
$spreadsheet = new Spreadsheet();

$sheet = $spreadsheet->getActiveSheet();
$sheet->setTitle('Лист 1');
$columns = range('A', 'D');

$c = 0;
$sheet->setCellValue($columns[$c++] . 1, 'Поле 1');
$sheet->setCellValue($columns[$c++] . 1, 'Поле 2');
$sheet->setCellValue($columns[$c++] . 1, 'Поле 3');
$sheet->setCellValue($columns[$c++] . 1, 'Поле 4');

foreach ($data as $value) {
    $sheet->setCellValue($columns[$c++] . $r, $value->getData1());
    $sheet->setCellValue($columns[$c++] . $r, $value->getData2());

    $c = 2;
    foreach ($value->getData3() as $item3) {
                    $sheet->setCellValue($columns[$c] . $r, $item3);
                    $r++;
    }
    $c = 3;
    foreach ($value->getData4() as $item4) {
                    $sheet->setCellValue($columns[$c] . $r, $item4);
                    $r++;
    }
    
    $r++;
}

Ответы (0 шт):