https://bugs.documentfoundation.org/show_bug.cgi?id=146377
Bug ID: 146377
Summary: Error doesn't propagate as first parameter in IF when
"IfFalse" contains ISERROR or IFERROR
Product: LibreOffice
Version: 7.2.4.1 release
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: medium
Component: Calc
Assignee: [email protected]
Reporter: [email protected]
Description:
Consider these 2 formulas:
=IF(NA();1;2)
=IF(NA();1;IFERROR(NA();2))
The NA() propagates in the first formula as expected, and the result it #N/A.
In the second formula, the NA() somehow doesn't propagate. It evalutes the
"IfFalse" parameter, and gives that as result. The second formula evaluates to
2. Even if the error in the "IfFalse" parameter is unrelated, it will still not
propagate the condition error, e.g.:
=IF(NA();1;2+IFERROR(#DIV/0!;2))
This evaluates to 4.
>From what I've read in the OpenDocument recalculated formula specification,
errors as function parameters should propagate unless noted otherwise, and in
this case I don't think it's noted otherwise.
At first I tried asking about it on the "ask libreoffice" website, but it seems
like a bug, so posting it here seems more appropriate.
Steps to Reproduce:
1. Have an error value in the first parameter of an IF, and use IFERROR or
ISERROR in the 3rd parameter of the IF, e.g.: =IF(NA();1;IFERROR(NA();2))
Actual Results:
The "IfFalse" parameter is evaluted.
Expected Results:
The error value propagates.
Reproducible: Always
User Profile Reset: Yes
Additional Info:
Version: 7.2.4.1 / LibreOffice Community
Build ID: 20(Build:1)
CPU threads: 16; OS: Linux 5.14; UI render: default; VCL: kf5 (cairo+xcb)
Locale: nl-NL (en_US.UTF-8); UI: en-US
7.2.4-1
Calc: threaded
--
You are receiving this mail because:
You are the assignee for the bug.