HEX2OCT formula in MS Excel returns incorrect result

Viewed 93

While converting the hexadecimal value "FFFFFFFF00" into octal value using Hex2Oct of MS Excel, it should return "Error string" as per the rules mentioned here:

If number is negative, HEX2OCT ignores places and returns a 10-character octal number.

If number is negative, it cannot be less than FFE0000000, and if number is positive, it cannot be greater than 1FFFFFFF.

If number is not a valid hexadecimal number, HEX2OCT returns the #NUM! error value.

If HEX2OCT requires more than places characters, it returns the #NUM! error value.

If places is not an integer, it is truncated.

If places is nonnumeric, HEX2OCT returns the #VALUE! error value.

If places is negative, HEX2OCT returns the #NUM! error value.

But it computes and returns as "7777777400" without considering the rules/remarks mentioned in the link.

For example:

While calculating HEX2OCT,

As per Excel rule, If number is positive, it cannot be greater than 1FFFFFFF(hex)<->3777777777(oct)<->536870911(decimal).

But while calculating the HEX2OCT for FFFFFFFF00(hex) <-> 7777777400(oct) <-> 1099511627520(decimal).

Here the hex value FFFFFFFF00 is greater than 1FFFFFFF, but MS Excel does not return the error string instead it returns the converted octal value.

Can anyone explain why?

2 Answers
Related