@@ 6596-6611 (lines=16) @@ | ||
6593 | break; |
|
6594 | case 0x3A: // 3d reference to cell |
|
6595 | case 0x5A: |
|
6596 | case 0x7A: |
|
6597 | $name = 'tRef3d'; |
|
6598 | $size = 7; |
|
6599 | ||
6600 | try { |
|
6601 | // offset: 1; size: 2; index to REF entry |
|
6602 | $sheetRange = $this->readSheetRangeByRefIndex(self::getInt2d($formulaData, 1)); |
|
6603 | // offset: 3; size: 4; cell address |
|
6604 | $cellAddress = $this->readBIFF8CellAddress(substr($formulaData, 3, 4)); |
|
6605 | ||
6606 | $data = "$sheetRange!$cellAddress"; |
|
6607 | } catch (\PhpOffice\PhpSpreadsheet\Exception $e) { |
|
6608 | // deleted sheet reference |
|
6609 | $data = '#REF!'; |
|
6610 | } |
|
6611 | break; |
|
6612 | case 0x3B: // 3d reference to cell range |
|
6613 | case 0x5B: |
|
6614 | case 0x7B: |
|
@@ 6614-6629 (lines=16) @@ | ||
6611 | break; |
|
6612 | case 0x3B: // 3d reference to cell range |
|
6613 | case 0x5B: |
|
6614 | case 0x7B: |
|
6615 | $name = 'tArea3d'; |
|
6616 | $size = 11; |
|
6617 | ||
6618 | try { |
|
6619 | // offset: 1; size: 2; index to REF entry |
|
6620 | $sheetRange = $this->readSheetRangeByRefIndex(self::getInt2d($formulaData, 1)); |
|
6621 | // offset: 3; size: 8; cell address |
|
6622 | $cellRangeAddress = $this->readBIFF8CellRangeAddress(substr($formulaData, 3, 8)); |
|
6623 | ||
6624 | $data = "$sheetRange!$cellRangeAddress"; |
|
6625 | } catch (\PhpOffice\PhpSpreadsheet\Exception $e) { |
|
6626 | // deleted sheet reference |
|
6627 | $data = '#REF!'; |
|
6628 | } |
|
6629 | break; |
|
6630 | // Unknown cases // don't know how to deal with |
|
6631 | default: |
|
6632 | throw new Exception('Unrecognized token ' . sprintf('%02X', $id) . ' in formula'); |