The information in this article applies to:
SYMPTOMSWhen you change the Regional Settings to make the Number's decimal symbol the same as the Currency's "digit grouping symbol," CSng does not interpret this character as a decimal point. Therefore, you get a different result that you would have in Visual Basic 5.0. This is also the case for the CDbl function. CAUSEThe new oleaut32 checks to see if the character is the Currency "digit grouping symbol" first. If it is, then even if it's also the Number's decimal symbol, it will be considered as the Currency "digit grouping symbol" instead of the Number's decimal symbol. RESOLUTIONResolve the conflicting by using the Regional Settings in the Control Panel on the Start menu. STATUSThis behavior is by design. MORE INFORMATION
This new behavior is an enhancement, because the String you want to change
to a Single value may represent Currency, so it should be transformed to a
correct value. If you choose default settings for the locale, the decimal
point symbol is always different than that used as the digit grouping
symbol of Currency. So this problem only happens when one of these two
settings is manually changed, creating a conflict. Having conflicting
symbols is not valid (not just in this situation, but also in other
situations) and will probably cause other problems as well.
Steps to Reproduce Behavior
Keywords : kbVBp kbVBp600 kbGrpVB |
Last Reviewed: January 5, 2000 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |