From 79f5cf99f68637b4e0db70eb1307e62e570300b8 Mon Sep 17 00:00:00 2001 From: MarkBaker Date: Tue, 17 May 2022 12:56:21 +0200 Subject: [PATCH] Resolve Issue #2833, NULL value handling in PRODUCT() Excel function --- .../Calculation/MathTrig/Operations.php | 2 +- tests/data/Calculation/MathTrig/PRODUCT.php | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/PhpSpreadsheet/Calculation/MathTrig/Operations.php b/src/PhpSpreadsheet/Calculation/MathTrig/Operations.php index 7fd302339..44e135262 100644 --- a/src/PhpSpreadsheet/Calculation/MathTrig/Operations.php +++ b/src/PhpSpreadsheet/Calculation/MathTrig/Operations.php @@ -108,7 +108,7 @@ class Operations // Loop through arguments foreach (Functions::flattenArray($args) as $arg) { // Is it a numeric value? - if (is_numeric($arg)) { + if (is_numeric($arg) || $arg === null) { if ($returnValue === null) { $returnValue = $arg; } else { diff --git a/tests/data/Calculation/MathTrig/PRODUCT.php b/tests/data/Calculation/MathTrig/PRODUCT.php index 0e7c40802..ab5009535 100644 --- a/tests/data/Calculation/MathTrig/PRODUCT.php +++ b/tests/data/Calculation/MathTrig/PRODUCT.php @@ -48,6 +48,18 @@ return [ -6.7800000000000002, -2, ], + [ + 0, + 12.5, + null, + 2.5, + ], + [ + 0, + 12.5, + 2.5, + null, + ], ['#VALUE!', 1, 'y', 3], [6, 1, '2', 3], ];