Excel can only store up to 15 significant digits accurately in a numeric cell. Any digits beyond the 15th are automatically replaced with zeros.

Sil, D. (Darpan) 0 Reputation points
2026-07-29T09:06:55.6333333+00:00

Why this very common issue is not resolved yet by Microsoft.. it should automatically convert the cell to text while copying >15 digit numeric value to cell, instead of corrupting the data with 0. Why manual action need to be taken to convert the cell to Text before copying.. Lots of manual effort we have to take for our report coping from DB to Excel. Please Resolve ASAP.

Microsoft 365 and Office | Excel | For business | Windows
0 comments No comments

2 answers

Sort by: Most helpful
  1. riny 21,350 Reputation points Volunteer Moderator
    2026-07-29T12:30:07.73+00:00

    @Sil, D. (Darpan)

    Please check these Automatic Data Conversion settings.

    User's image

    I've disabled them all to prevent Excel from guessing what my data is about. In your specific case, deselect the "Keep first 15....." box. Now you can enter 12345678901234567890 and Excel will keep it as is, without having to format the cell as text first.

    Was this answer helpful?

    0 comments No comments

  2. Killian N 3,065 Reputation points Independent Advisor
    2026-07-29T11:55:16.5533333+00:00

    Hi,

    From what you've described, this behavior is expected in Excel. Because of the way Excel stores and processes numeric values internally, numbers are limited to 15 significant digits. As a result, any digits beyond the 15th position cannot be stored accurately in a numeric cell and may be automatically replaced with zeros. You can find more information in Microsoft's documentation on Excel specifications and limits and Floating-point arithmetic may give inaccurate results in Excel.

    That said, if you're working with long values such as database IDs, account numbers, product codes, or transaction identifiers, it's generally best to store them as Text rather than as numbers. Since these values are typically used as identifiers and not for mathematical calculations, storing them as text helps preserve every digit exactly as intended.

    To avoid this issue, you can format the destination column as Text before pasting the data. Alternatively, if you're importing data, you can use Data > Get Data (Power Query) and explicitly set the column's data type to Text before loading it into Excel. If the data originates from a database, exporting the field as Text/VARCHAR is also a reliable approach.

    In addition, I would encourage you to submit this suggestion through the Excel · Communityor support any existing feedback that matches your scenario. While there are workarounds available today, improving Excel's handling or detection of long numeric identifiers would ultimately require a product design change. Your use case is certainly understandable, particularly in database and reporting environments where long numeric-looking identifiers must be preserved exactly as stored.

    If you decide to submit feedback, you're welcome to share the link in your reply. I'd be glad to take a look and support it as well.

    I hope this helps. Please let me know if you have any questions or if there's anything else I can assist you with.


    If the answer is helpful, please click "Yes" and kindly upvote it. If you have extra questions about this answer, please click "Comment".      

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.  

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.