Article ID: 182812 - View products that this article applies to.
This article was previously published under Q182812
Microsoft Excel 97 for Windows and Excel 98 for Macintosh include a new Visual Basic for Applications property called Value2. The Value2 property, which you can use for the Range object, is almost identical to the Value property except that the Value2 property does not use the Currency and Date data types. Depending on how a cell is formatted (for example, with date, currency, or other formats), the two properties may return different values for the same cell.
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements. In the following example, the Value and Value2 properties return different results for the same cell object. To see the results, follow these steps:
Currency returned by Value property = 1.2346
Currency returned by Value2 property = 1.23456789
Date returned by Value property = 2/3/97
Date returned by Value2 property = 34002
Currency set by Value property = 1.23
Currency set by Value2 property = 1.23456789
The underlying cell value in cell A1 is 1.23456789, however, the Value property returns 1.2346. This is true because Microsoft Excel stores currency numbers in an integer format that is scaled by 10,000 to produce a fixed-point number with 15 digits to the left of the decimal and 4 digits to the right of the decimal. For cells formatted as currency, the Value2 property returns the actual underlying cell value.
The underlying cell value in cell A2 is the serial number for 2/3/97, which is 34002. The Value property returns a date formatted with the short date format. The Value2 property, for cells formatted as a date, returns the underlying serial number for the date.
The cell value set in A3 is rounded because the .Value property of A1 returns a number in the currency data type. When you use .Value to apply a number in currency data type, Excel will truncate (not round) it to 2 decimal places. This is also the same as using the following line of code:
Range("A3").Value = cCur(1.23456789)
For more information about using the Value2 property, click the Office Assistant, type value2, click Search, and then click to view the "Value2 Property" topic.
NOTE: If the Assistant is hidden, click the Office Assistant button on the Standard toolbar. If Visual Basic for Applications Help is not installed on your computer, please see the following article in the Microsoft Knowledge Base:
(https://support.microsoft.com/kb/120802/EN-US/ )Office: How to Add/Remove a Single Office Program or Component
Article ID: 182812 - Last Review: January 22, 2007 - Revision: 4.2