public function PHPExcel::addExternalSheet in Loft Data Grids 6.2
Same name and namespace in other branches
- 7.2 vendor/phpoffice/phpexcel/Classes/PHPExcel.php \PHPExcel::addExternalSheet()
Add external sheet
Parameters
PHPExcel_Worksheet $pSheet External sheet to add:
int|null $iSheetIndex Index where sheet should go (0,1,..., or null for last):
Return value
Throws
File
- vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel.php, line 738
Class
- PHPExcel
- PHPExcel
Code
public function addExternalSheet(PHPExcel_Worksheet $pSheet, $iSheetIndex = null) {
if ($this
->sheetNameExists($pSheet
->getTitle())) {
throw new PHPExcel_Exception("Workbook already contains a worksheet named '{$pSheet->getTitle()}'. Rename the external sheet first.");
}
// count how many cellXfs there are in this workbook currently, we will need this below
$countCellXfs = count($this->_cellXfCollection);
// copy all the shared cellXfs from the external workbook and append them to the current
foreach ($pSheet
->getParent()
->getCellXfCollection() as $cellXf) {
$this
->addCellXf(clone $cellXf);
}
// move sheet to this workbook
$pSheet
->rebindParent($this);
// update the cellXfs
foreach ($pSheet
->getCellCollection(false) as $cellID) {
$cell = $pSheet
->getCell($cellID);
$cell
->setXfIndex($cell
->getXfIndex() + $countCellXfs);
}
return $this
->addSheet($pSheet, $iSheetIndex);
}