The information in this article applies to:
SYMPTOMSWhen you run a Microsoft Visual Basic for Applications macro that uses the Format function to return a value using a specific format, the function may return a slightly different value, depending on what version of Microsoft Excel you are using. CAUSE
This problem may occur when the following conditions are true:
-and- WORKAROUND
There are two methods you can use to prevent this problem from occurring:
STATUSThis behavior is by design in Microsoft Excel. MORE INFORMATIONYou can demonstrate this problem by running Visual Basic code that includes the following line:
In Microsoft Excel 5.x for Windows, the message box displays the value
$.08. In Microsoft Excel for the Macintosh, version 5.x, and Microsoft
Excel 98 Macintosh Edition, the message box displays the value $.07.
Note that the format expression ("$#.##") in this example uses two decimal places, and that the value being passed to the function (0.075) uses three decimal places. Because of this, the Format function rounds the value to two decimal places before applying the format to the value, and the problem may occur. If you change the format expression to "$#.###", or if you first round the value (0.075) to two decimal places, the message box displays the same value in all versions of Microsoft Excel. The problem only occurs when the value uses more decimal places than the format expression. Additional query words: XL98 XL5 IEEE
Keywords : xlvbainfo |
Last Reviewed: January 13, 2000 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |