split long method in different methods

I have this method:

public function createExcel(Task $task = null, Project $project = null, $projectTitle = null)
    {
        $this->spreadsheet = new Spreadsheet();

        $default_border = array(
            'style' => Border::BORDER_THIN,
            'color' => array('rgb' => '1006A3')
        );

        $style_header = array(
            'borders' => array(
                'bottom' => $default_border,
                'left' => $default_border,
                'top' => $default_border,
                'right' => $default_border,
            ),
            'fill' => array(
                'type' => Fill::FILL_SOLID,
                'color' => array('rgb' => 'E1E0F7'),
            ),
            'font' => array(
                'bold' => true,
                'size' => 16,
            )
        );

        $style_content = array(
            'borders' => array(
                'bottom' => $default_border,
                'left' => $default_border,
                'top' => $default_border,
                'right' => $default_border,
            ),
            'fill' => array(
                'type' => Fill::FILL_SOLID,
                'color' => array('rgb' => 'eeeeee'),
            ),
            'font' => array(
                'size' => 12,
            )
        );

        /**
         * Header information of the excel sheet
         */
        $this->spreadsheet->setActiveSheetIndex(0)
            ->setCellValue('A1', 'Zoekterm')
            ->setCellValue('B1', 'Website')
            ->setCellValue('C1', 'Pagina')
            ->setCellValue('D1', 'Paginatitel')
            ->setCellValue('E1', 'Paginabeschrijving')
            ->setCellValue('F1', 'KvK-nummer')
            ->setCellValue('G1', 'Vestigingsnummer')
            ->setCellValue('H1', 'Adresgegevens');
        $this->spreadsheet->getActiveSheet()->getStyle('A1:H1')->applyFromArray($style_header); // give style to header

        $dataku = [];


        if ($projectTitle == BoolState::TRUE) {
            foreach ($project->tasks as $task)
                if ($task->status_id == TaskStatus::CLOSED)
                    foreach ($task->activeResults as $result)
                        $dataku[] = [$result->task->search_query, $result->page_url, $result->page_link, $result->page_title, $result->page_description, $result->coc_number, $result->branch_code, $result->address];
        } else {
            foreach ($task->activeResults as $result)
                $dataku[] = [$result->task->search_query, $result->page_url, $result->page_link, $result->page_title, $result->page_description, $result->coc_number, $result->branch_code, $result->address];
        }


        $firststyle = 'A2';
        for ($i = 0; $i < count($dataku); $i++) {
            $urut = $i + 2;
            $search_query = 'A' . $urut;
            $page_url = 'B' . $urut;
            $page_link = 'C' . $urut;
            $page_title = 'D' . $urut;
            $page_description = 'E' . $urut;
            $coc_number = 'F' . $urut;
            $branch_code = 'G' . $urut;
            $address = 'H' . $urut;
            $this->spreadsheet->setActiveSheetIndex(0)
                ->setCellValue($search_query, $dataku[$i][0])
                ->setCellValue($page_url, $dataku[$i][1])
                ->setCellValue($page_link, $dataku[$i][2])
                ->setCellValue($page_title, $dataku[$i][3])
                ->setCellValue($page_description, $dataku[$i][4])
                ->setCellValue($coc_number, $dataku[$i][5])
                ->setCellValue($branch_code, $dataku[$i][6])
                ->setCellValue($address, $dataku[$i][7]);

            $laststyle = $page_description;
        }

        $this->spreadsheet->getActiveSheet()->getStyle($firststyle . ':' . $laststyle)->applyFromArray($style_content); // give style to header

        $writer = $this->outType == 'xlsx' ? new PhpOfficePhpSpreadsheetWriterXlsx($this->spreadsheet) : new Xls($this->spreadsheet);
        var_dump($this->stream);
        if (!$this->stream) {
            $writer->save($this->filename);
        } else {
            $this->filename = $this->filename == null ? $this->title : $this->filename;
            $this->cleanOutput();
            header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
            header('Pragma: public');
            header('Cache-Control: max-age=0');
            header('Content-Disposition: attachment;filename="NVWA HDT ' . ucfirst($projectTitle ? $task->project->description : $task->search_query) . '.Xls"'); // file name of excel
            header('Content-type: application/vnd.ms-excel');
            $writer->save('php://output');
            Yii::app()->end();
        }
    }


So the upper part is for then layout of the excel sheet. But is it cleaner to have that in a seperate method?

Thank you