Bug 34729 - Office 2007 IFERROR Function Conversion to Calc
Summary: Office 2007 IFERROR Function Conversion to Calc
Status: RESOLVED DUPLICATE of bug 56124
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
3.5.0 release
Hardware: All All
: medium enhancement
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on: 56124
Blocks:
  Show dependency treegraph
 
Reported: 2011-02-25 11:20 UTC by landyman
Modified: 2012-11-20 06:36 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description landyman 2011-02-25 11:20:55 UTC
Office 2007 contains a function called IFERROR. IFERROR is a shortcut function and is not recognized by LibreOffice (or Office 2003 for that matter). 

Here is what I suggest:
1. Either create the IFERROR function to be the same as below, or
2. When importing/opening an Excel 2007 document that uses IFERROR, convert it using the following information:

Office 2007:
IFERROR(value, value_if_error)

value = argument that is checked for an error
value_if_error = the value to return if the value evaluates to an error. 

If the evalutation value does not return an error, then the evaluation of value is returned.

LibreOffice suggestion:
IF(ISERR(value),value_if_error,value)

Thanks.
Comment 1 Björn Michaelsen 2011-12-23 11:49:55 UTC
[This is an automated message.]
This bug was filed before the changes to Bugzilla on 2011-10-16. Thus it
started right out as NEW without ever being explicitly confirmed. The bug is
changed to state NEEDINFO for this reason. To move this bug from NEEDINFO back
to NEW please check if the bug still persists with the 3.5.0 beta1 or beta2 prereleases.
Details on how to test the 3.5.0 beta1 can be found at:
http://wiki.documentfoundation.org/QA/BugHunting_Session_3.5.0.-1

more detail on this bulk operation: http://nabble.documentfoundation.org/RFC-Operation-Spamzilla-tp3607474p3607474.html
Comment 2 Tim Richardson 2012-02-27 03:17:18 UTC
LibreOffice 3.5 does not support the iferror formula.
Comment 3 Tim Richardson 2012-02-29 03:32:51 UTC
IFERROR is a very convenient error trapping formula. Something convenient is much more likely to be used.
Comment 4 pot 2012-03-06 10:49:30 UTC
Please note that IFERROR is implemented in Gnumeric too.  It is very convenient for simplifying some long formulas:

	IF(ISERROR(long_formula_here),"",long_formula_here)

becomes simply

	IFERROR(long_formula_here,"")

which enormously improves readability (and bug resiliency) where long
formulas are involved, and probably also memory consumption and speed.
Comment 5 David Jaša 2012-03-29 09:07:27 UTC
(fixed) request for ODF to define it:

http://tools.oasis-open.org/issues/browse/OFFICE-3468
Comment 6 Eike Rathke 2012-04-02 05:44:40 UTC
Just a note: if someone wants to implement this, also implement the IFNA() function that works similar but specifically evaluates for NA errors.

Code pointers: modules formula and sc, lookout for places where the ocIf OpCode is used, and implementation of the interpreter run time in sc/source/core/tool/interpr1.cxx method ScInterpreter::ScIfJump()

Note that these IF... functions are not as straight forward to implement as other spreadsheet functions, because of the code jumps they provide. For general notes about spreadsheet function implementation see http://wiki.services.openoffice.org/wiki/Calc/Implementation/Spreadsheet_Functions
Comment 7 Rene Engelhard 2012-11-19 14:57:29 UTC
looks like work on this actually is on 56124
Comment 8 Winfried Donkers 2012-11-20 06:36:41 UTC
bug 56124 (which forms part of meta bug 50488 that covers all functions in ODFF1.2 that are not yet implemented in calc) covers IFERROR() (and IFNA()). As a patch for these functions has been submitted under bug 56124, I closed this bug as a duplicate of 56124.
For your information, I will add the cc-list of this bug to bug 56124.

*** This bug has been marked as a duplicate of bug 56124 ***