Loading CHANGELOG.md +5 −0 Original line number Diff line number Diff line CHANGELOG ========= 6.0.7 (24/05/2024) ------------------ - [Fix] détection des noms de feuilles dans les références aux cellules d'autres pages de feuilles de calcul 6.0.6 ------------------ Loading src/Calc.php +0 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ namespace Unicaen\OpenDocument; use Unicaen\OpenDocument\Calc\Formule; use Unicaen\OpenDocument\Calc\Sheet; class Calc Loading src/Calc/Formule.php +26 −9 Original line number Diff line number Diff line Loading @@ -182,18 +182,19 @@ class Formule $length++; } while ($t['type'] === null && $t['v'] !== ']'); if ($val[0] !== '.') { return; } $val = substr($val, 1); if (false !== strpos($val, ':')) { $range = explode(':', $val); $begin = $range[0]; [$sheet, $begin] = explode('.', $range[0]); $end = substr($range[1], 1); if (str_starts_with($sheet, '$')){ $sheet = substr($sheet,1); } if (str_starts_with($sheet, "'")){ $sheet = substr($sheet,1,-1); } $cBegin = Calc::cellNameToCoords($begin); $cEnd = Calc::cellNameToCoords($end); Loading @@ -208,11 +209,27 @@ class Formule 'colEnd' => $cEnd['col'], 'colNamedEnd' => Calc::numberToLetter($cEnd['col']), ]; if ($sheet){ $term['sheet'] = $sheet; } } else { [$sheet, $name] = explode('.', $val); if (str_starts_with($sheet, '$')){ $sheet = substr($sheet,1); } if (str_starts_with($sheet, "'")){ $sheet = substr($sheet,1,-1); } $term = [ 'type' => 'cell', 'name' => $val, 'name' => $name, ]; if ($sheet){ $term['sheet'] = $sheet; } } $this->tw($term, $i, $length); Loading Loading
CHANGELOG.md +5 −0 Original line number Diff line number Diff line CHANGELOG ========= 6.0.7 (24/05/2024) ------------------ - [Fix] détection des noms de feuilles dans les références aux cellules d'autres pages de feuilles de calcul 6.0.6 ------------------ Loading
src/Calc.php +0 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ namespace Unicaen\OpenDocument; use Unicaen\OpenDocument\Calc\Formule; use Unicaen\OpenDocument\Calc\Sheet; class Calc Loading
src/Calc/Formule.php +26 −9 Original line number Diff line number Diff line Loading @@ -182,18 +182,19 @@ class Formule $length++; } while ($t['type'] === null && $t['v'] !== ']'); if ($val[0] !== '.') { return; } $val = substr($val, 1); if (false !== strpos($val, ':')) { $range = explode(':', $val); $begin = $range[0]; [$sheet, $begin] = explode('.', $range[0]); $end = substr($range[1], 1); if (str_starts_with($sheet, '$')){ $sheet = substr($sheet,1); } if (str_starts_with($sheet, "'")){ $sheet = substr($sheet,1,-1); } $cBegin = Calc::cellNameToCoords($begin); $cEnd = Calc::cellNameToCoords($end); Loading @@ -208,11 +209,27 @@ class Formule 'colEnd' => $cEnd['col'], 'colNamedEnd' => Calc::numberToLetter($cEnd['col']), ]; if ($sheet){ $term['sheet'] = $sheet; } } else { [$sheet, $name] = explode('.', $val); if (str_starts_with($sheet, '$')){ $sheet = substr($sheet,1); } if (str_starts_with($sheet, "'")){ $sheet = substr($sheet,1,-1); } $term = [ 'type' => 'cell', 'name' => $val, 'name' => $name, ]; if ($sheet){ $term['sheet'] = $sheet; } } $this->tw($term, $i, $length); Loading