Issue 119310 - IF Conditional inconsistent
Summary: IF Conditional inconsistent
Alias: None
Product: Calc
Classification: Application
Component: editing (show other issues)
Version: OOo 3.3
Hardware: HP (PA-RISC) Windows 7
: P3 Normal (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
Depends on:
Reported: 2012-05-04 20:40 UTC by Brian
Modified: 2013-07-10 21:57 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---

A spreadsheet showing the described problem (16.08 KB, application/vnd.oasis.opendocument.spreadsheet)
2012-05-04 20:40 UTC, Brian
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description Brian 2012-05-04 20:40:15 UTC
Created attachment 77513 [details]
A spreadsheet showing the described problem

The IF conditional does not always produce correct results.  It's very hard to explain since it seems somewhat arbitrary in terms of when it works and when it doesn't.  I set up a spreadsheet and attached it to this bug to show the problem.  To summarize, it seems that if you use an IF to check the value of a cell who's value is the result of a calculation, the IF may not return TRUE even if it should.  It seems to be related to how far down the chain the cell in question is.  To reproduce, simply create a column where each value is the previous row's value plus 0.01, starting at 0.01.  Then use an IF conditional in the next column to see if the value equals some constant.  If that constant is anything greater than 2.46 it fails.
Comment 1 Brian 2012-05-04 20:41:29 UTC
I chose OOo 3.3 as the version.  Not sure if that's correct.  I'm using Windows version 3.3.0.

OOO330m20 (Build:9567)
Comment 2 Terry 2012-05-05 03:00:54 UTC
The error seems to occur only with the start and increment of 0.01 each with a check figure in B3 greater than 2.46.

Using increments of 0.02 and 0.03 and different check values, the error does not occur.

The formula needs to be altered from =IF(A5=$B$3;$B$1;A5+$B$2) to =IF(A5>=$B$3;$B$1;A5+$B$2) to produce the desired result.  The new formula produces the desired results even when using start of 0.01 and increment of 0.01. I cannot understand why the initial formula fails when a higher check  number than 2.46 is used with those start and increment numbers.
Comment 3 Terry 2012-05-05 04:06:30 UTC
A correction.  Using the check figure of 2.48, with the new formula, cell A252 displays 2.48 and A253 displays 2.49.  Renumbering commences in A254, one cell late.
Comment 4 Li Feng Wang 2012-06-13 08:48:11 UTC
Can reproduce on AOO3.3.
Can't reproduce on AOO3.4 release version.
Comment 5 Li Feng Wang 2012-06-13 09:26:25 UTC
Can reproduce on AOO3.4 release version