@@ 6616-6631 (lines=16) @@ | ||
6613 | break; |
|
6614 | case 0x3A: // 3d reference to cell |
|
6615 | case 0x5A: |
|
6616 | case 0x7A: |
|
6617 | $name = 'tRef3d'; |
|
6618 | $size = 7; |
|
6619 | ||
6620 | try { |
|
6621 | // offset: 1; size: 2; index to REF entry |
|
6622 | $sheetRange = $this->readSheetRangeByRefIndex(self::getInt2d($formulaData, 1)); |
|
6623 | // offset: 3; size: 4; cell address |
|
6624 | $cellAddress = $this->readBIFF8CellAddress(substr($formulaData, 3, 4)); |
|
6625 | ||
6626 | $data = "$sheetRange!$cellAddress"; |
|
6627 | } catch (\PhpOffice\PhpSpreadsheet\Exception $e) { |
|
6628 | // deleted sheet reference |
|
6629 | $data = '#REF!'; |
|
6630 | } |
|
6631 | break; |
|
6632 | case 0x3B: // 3d reference to cell range |
|
6633 | case 0x5B: |
|
6634 | case 0x7B: |
|
@@ 6634-6649 (lines=16) @@ | ||
6631 | break; |
|
6632 | case 0x3B: // 3d reference to cell range |
|
6633 | case 0x5B: |
|
6634 | case 0x7B: |
|
6635 | $name = 'tArea3d'; |
|
6636 | $size = 11; |
|
6637 | ||
6638 | try { |
|
6639 | // offset: 1; size: 2; index to REF entry |
|
6640 | $sheetRange = $this->readSheetRangeByRefIndex(self::getInt2d($formulaData, 1)); |
|
6641 | // offset: 3; size: 8; cell address |
|
6642 | $cellRangeAddress = $this->readBIFF8CellRangeAddress(substr($formulaData, 3, 8)); |
|
6643 | ||
6644 | $data = "$sheetRange!$cellRangeAddress"; |
|
6645 | } catch (\PhpOffice\PhpSpreadsheet\Exception $e) { |
|
6646 | // deleted sheet reference |
|
6647 | $data = '#REF!'; |
|
6648 | } |
|
6649 | break; |
|
6650 | // Unknown cases // don't know how to deal with |
|
6651 | default: |
|
6652 | throw new Exception('Unrecognized token ' . sprintf('%02X', $id) . ' in formula'); |