Hi Winfried, On Thursday, 2012-12-06 13:08:37 +0100, Winfried Donkers wrote:
-----Oorspronkelijk bericht----- Van: Winfried Donkers So I followed your suggestion to work along the lines of ScIfJump/ocIf. These last 2 weeks I have not been able to get that working properly. To finally find out what goes wrong, I copied the contents of SCIfJump() into ScIfError(), made ocIfError do the same as ocIf (except in lotus/excel filter files) and gave IFERROR() 3 arguments (just as IF()). It still doesn't work: IFERROR(X;Y;Z) always returns Y, regardless of the value of X. That is, if X produces an error (or Y, or Z), the error is returned. What am I missing/messing up?
Could it be that you didn't implement the special handling in the compiler and tokens? Grep for ocIf in formula/source/core/api/token.cxx formula/source/core/api/FormulaCompiler.cxx sc/source/core/tool/token.cxx sc/source/core/tool/interpr4.cxx For all occurrences that might need attention issue the command git grep ocIf formula sc in $SRCDIR, e.g. for completeness at the end there should also be an entry in sc/source/core/tool/parclass.cxx Eike -- LibreOffice Calc developer. Number formatter stricken i18n transpositionizer. GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3 9E96 2F1A D073 293C 05FD Support the FSFE, care about Free Software! https://fsfe.org/support/?erack
Attachment:
pgpb2bH8NVi4o.pgp
Description: PGP signature