FWIW, I believe this is now fixed. I am using PhpExcel 1.8, and the code for removeRow explicitly changes the value of maximumDataRow, namely:
public function removeRow($pRow = 1, $pNumRows = 1) { if ($pRow >= 1) { $highestRow = $this->getHighestDataRow(); $objReferenceHelper = PHPExcel_ReferenceHelper::getInstance(); $objReferenceHelper->insertNewBefore('A' . ($pRow + $pNumRows), 0, -$pNumRows, $this); for ($r = 0; $r < $pNumRows; ++$r) { $this->getCellCacheController()->removeRow($highestRow); --$highestRow; } } else { throw new PHPExcel_Exception("Rows to be deleted should at least start from row 1."); } return $this; }
So, if this is still a problem for everyone, updating your version of PhpExcel should solve it.
source share