Microsoft Access Database engine 2010 fails to read big currency values from Excel RRS feed

  • Question

  • I attempted to read currency values from an Excel file using Field20::GetValue() defined in msado15.tli of Microsoft Access Database engine 2010 (64 bits), but it fails to read currency values  > ~10e12

    For example:

    Excel currency value Value returned by GetValue()
    $1,234,567,890 {1234567890.0000 VT_CY}
    $12,345,678,901 {12345678901.0000 VT_CY}
    $123,456,789,012 {123456789012.0000 VT_CY}
    $1,000,000,000,000 {50519646565.1712 VT_CY} incorrect returned value
    $1,234,567,890,123 {166923982324.4504 VT_CY} incorrect returned value
    $12,345,678,901,234 {321244968590.0754 VT_CY} incorrect returned value

    NOTE: All returned values are correct if I format cells as "Number" instead of "Currency".

    Monday, March 12, 2012 10:30 PM

All replies

  • Hi Tri,

    Thanks for posting in the MSDN Forum.

    Would you please tell me which kind of C++ template you used in your solution? Is it a MFC appliction or other template?

    Have a good day,


    Tom Xu [MSFT]
    MSDN Community Support | Feedback to us

    Wednesday, March 14, 2012 3:01 AM
  • Hi Tom,

    No, It's not an MFC application, but a general C++ program. I mainly use objects and methods declared in msado15.tlh and msado15.tli to open and read the data from the Execel file.



    Tri Do

    Monday, March 19, 2012 10:25 PM
  • Hi Tri Do,

    I have logged this for review since it appears it may be a bug.  Unfortunately, I don't have a solution for you.  If you'd like to open a support case with us, we can investigate further to see if we can find any workarounds.  Here's a link to support options.

    Sharon M, Microsoft Online Community Support

    Tuesday, March 20, 2012 3:06 PM
  • Did you know if you have solution for this problem?



    Tri Do

    Monday, February 11, 2013 9:53 PM
  • Hi,

    Does anybody know if this issue has been resolved?



    Tri Do

    Tuesday, October 1, 2013 5:08 PM