XL97: Description of the Value2 Property for the Range Object

ID: Q165929


The information in this article applies to:
  • Microsoft Excel 97 for Windows


SUMMARY

Microsoft Excel 97 includes 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.

Note that the Value2 property is not available in earlier versions of Microsoft Excel. Therefore, if a cell is formatted with a currency number format or a date number format, the Value property may not return the expected underlying cell value.


MORE INFORMATION

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals 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 needs. If you have limited programming experience, you may want to contact the Microsoft fee-based consulting line at (800) 936-5200. For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

http://www.microsoft.com/support/supportnet/overview/overview.asp
In the following example, the Value and Value2 properties return different results for the same cell object. To see the results, use the following steps:
  1. Close and save any open workbooks, and then create a new workbook.


  2. Enter the following in Sheet1:
    A1: 1.23456789
    A2: 2/3/97


  3. Click cell A1 and click cells on the Format menu. Then, on the Number tab, click Currency in the Category list, and click OK.


  4. Click cell A2 and click cells on the Format menu.


  5. Click the Number tab, click Date in the Category list, and click OK.


  6. Start the Visual Basic Editor (press ALT+F11).


  7. On the Insert menu, click Module.


  8. Enter the following code in the Visual Basic module:
    
          Sub Value_vs_Value2()
    
             MsgBox "Currency returned by Value property = " &_
                Sheet1.Range("A1").Value
    
             MsgBox "Currency returned by Value2 property = " & _
                Sheet1.Range("A1").Value2
    
             MsgBox "Date returned by Value property = " &_
                Sheet1.Range("A2").Value
    
             MsgBox "Date returned by Value2 property = " &_
                Sheet1.Range("A2").Value2
    
          End Sub 


  9. Run the Value_vs_Value2 macro. To do this, click Macros on the Tools menu. Click Value_vs_Value2 and click Run.


The macro displays the following messages in order:
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 = 35431
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 35431. 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.


REFERENCES

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:

Q120802 Office: How to Add/Remove a Single Office Program or Component

Additional query words: XL97

Keywords : kbprg kbdta kbdtacode KbVBA
Version : WINDOWS:97
Platform : WINDOWS
Issue type : kbhowto


Last Reviewed: November 9, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.