private function writeOnWorkSheet(Map $groupedValues, ExcelOutputFile $spreadSheet, array $years, $index = 0)
 {
     if (!$groupedValues->isEmpty()) {
         parent::titles($years);
         parent::addValuesToARow($groupedValues, $years);
         $spreadSheet->setNewDataToExcel($this->dataToExcel);
         $nameGroup = $groupedValues->get(0)->offsetGet(0)->getSubgroupName();
         $spreadSheet->buildSpreadSheet($nameGroup, $index);
     }
 }
<?php

require_once '../util/Maps/HashMap.php';
require_once '../util/excel/writer/MapToExcel.php';
require_once '../util/excel/writer/ExcelOutputFile.php';
require_once '../util/excel/writer/ExcelWriter.php';
$values = new HashMap();
$values->put("rowTitles", array("Nome", "Sobrenome", "Idade"));
$values->put(0, array("Ramon", "Goncalves", "22"));
$values->put(1, array("Matheus", "Goncalves", "09"));
$values->put(2, array("Karen", "Guedes", "22"));
$dataToExcel = new MapToExcel($values);
$excelOutputFile = new ExcelOutputFile($dataToExcel, new ExcelWriter("testName.xls"));
echo $excelOutputFile->getSpreadSheet();
header("Location: " . $excelOutputFile->getSpreadSheet());