Limiting Input to Two Decimal Places

by Allen Wyatt
(last updated December 29, 2018)

7

Ashley wonders how to limit the input of a number to 2 decimal places. In trying to figure it out, she notes that the Data Validation tool does not seem to work for this requirement.

There are two ways you can approach this problem. The first is to use a custom rule in Excel's Data Validation tool. Follow these steps:

  1. Select the cell where you want to limit the input to two decimal places. (For this example, let's assume you select cell A1.)
  2. Display the Data tab of the ribbon.
  3. Click the Data Validation tool. Excel displays the Data Validation dialog box.
  4. Make sure the Settings tab is displayed. (See Figure 1.)
  5. Figure 1. The Settings tab of the Data Validation dialog box.

  6. In Allow drop-down list, choose Custom.
  7. In the Formula box (which appears when you complete step 5), enter the following formula:
     =MOD(A1*100,1)=0
  • Click OK to close the dialog box.
  • This validation formula works because it checks to make sure that the value in A1, when multiplied by 100 and then divided by 1, has no remainder. It will only have this remainder if there are three or more decimal places in the value entered. Validation will also fail if someone tries to enter text into cell A1.

    There are, of course, any number of other formulas you could use in step 6. Here are a few:

    =INT(A1*100)=(A1*100)
    =A1=ROUND(A1,2)
    =ABS(A1-ROUND(A1,2))<1E-8
    =FIND(".",A1,1)>=LEN(A1)-2
    

    Instead of using Data Validation, there is another approach you could take. This one involves using the following steps:

    1. Select the cell where you want to limit the input to two decimal places. (For this example, let's assume you select cell A1.)
    2. Format the cell as desired, but make sure it is at least formatted to display only two decimal places.
    3. Display the Excel Options dialog box. (In Excel 2007 click the Office button and then click Excel Options. In Excel 2010 and later versions display the File tab of the ribbon and then click Options.)
    4. Click the Advanced option at the left of the dialog box.
    5. Scroll through the available options until you see the When Calculating This Workbook section. (See Figure 2.)
    6. Figure 2. The Advanced options of the Excel Options dialog box.

    7. Ensure that the Set Precision as Displayed check box is selected.
    8. Click OK.

    Now, when someone enters a value into the cell you formatted in step 2, it will be rounded to two decimal places automatically, and Excel will make sure that any calculations use the two-decimal-place value.

    The drawback to this approach is that changing how Excel does its calculations (steps 3 through 6) affects the entire workbook, not just the data-entry cell selected in step 1. If this is unacceptable to you, then you should definitely choose the Data Validation approach, discussed earlier.

    ExcelTips is your source for cost-effective Microsoft Excel training. This tip (889) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and Excel in Office 365.

    Author Bio

    Allen Wyatt

    With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company. ...

    MORE FROM ALLEN

    Putting Your Index after Your Endnotes

    Endnotes are supposed to be at the end of your document, right? Not necessarily. You may want something else at the end, ...

    Discover More

    Looking Up Antonyms

    Antonyms are words that have opposite meanings. The grammar tools available in Word can suggest antonyms for some words. ...

    Discover More

    Detecting an Open Dialog Box

    Macros can be used to perform all sorts of tasks within Word. Some tasks can even occur at whatever time interval you ...

    Discover More

    Excel Smarts for Beginners! Featuring the friendly and trusted For Dummies style, this popular guide shows beginners how to get up and running with Excel while also helping more experienced users get comfortable with the newest features. Check out Excel 2013 For Dummies today!

    More ExcelTips (ribbon)

    External Data Validation

    When using data validation, you may want to reference a list of validation criteria contained on a different worksheet. ...

    Discover More

    Complex Data Input Limitations

    Data Validation is a great tool in Excel for making sure that whatever is entered in a cell matches your specific ...

    Discover More

    Making a Drop-Down List Indicator Visible

    Data validation allows you to create drop-down lists that aid data entry. If you want the indicator for the drop-down ...

    Discover More
    Subscribe

    FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

    View most recent newsletter.

    Comments

    If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] (all 7 characters, in the sequence shown) in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

    What is two less than 8?

    2021-08-16 05:52:44

    uk

    data validation not working on data pasted in cells .
    E.g. i have applied data validation for 2 decimal values. but it allows any decimals in same cell when data are pasted using paste special value function. the validation works absolutely fine when data are entered manually.


    2021-06-14 15:07:41

    Philippe Van Reybrouck

    Hi,

    MOD(A1*100,1)=0 works but when entering 130.11 it doesn't. Why could that be?


    2021-02-12 11:08:00

    Bill

    I have also found that the MOD() method results in multiple errors. I was certain that it had to do with the second part of my validation which compares values. But it was MOD()! I ran a check of 96193 cells and errors occurred 9175 times (a nearly 10% rate). It does not seem to be precision related, but I'm not absolutely certain about that as I did Fill-Down the 0.01, 0.02, 0.03...values (not hard entries). An expansion of displayed decimal places in the Error cells to the maximum (30) did not show any "higher" or "lower" values. It was formatted as Accounting and I did not try other formats to see if it replicated, though.

    Changed my formula to MOD(INT($A1*100),1)=0 and it shows no errors over that range. Of course, Allen provides multiple formulas to achieve the desired result, so no complaints and Thank You!, but MOD() seemed the most straight-forward and the logic and math, seemingly, should work properly.


    2021-02-03 04:04:16

    VM

    The fomula with =MOD(A1*100,1)=0, will result in ERROR with certain numbers. By accident I happened to fill in 0.28 (max. 2 decimals) and it was not allowed. Curious to know, I check all numbers between 0.01 - 10.00 (=1000 tests) and I found 72 numbers with a mistake up to 5.11 and upwards of 6.24 ALL where not ok.


    2020-08-13 10:04:47

    Sushi

    I have rounded off my data to 2 decimal places still when my excel is getting data from tables, it is diplaying the data upto 20 decimal places.Even after setting the precision as diplayed , unable to achieve the requirement of showing data upto 2 decimal places. Can u suggest something.


    2019-07-17 13:36:06

    John Lute

    I'm finding this very helpful - thanks! I'm having trouble with =FIND(".",A1,1)>=LEN(A1)-2

    I've modified this to =FIND(".",A1,1)>=LEN(A1)-4 in order to limit to four decimal places. The trouble with EITHER of these is that whole numbers won't match the validation. For example, 523.00 or 523.000 throw validation errors.

    Any idea how to handle these?


    2019-07-17 12:29:08

    John Lute

    I'm finding this very helpful - thanks! I'm having trouble with =FIND(".",A1,1)>=LEN(A1)-2

    I've modified this to =FIND(".",A1,1)>=LEN(A1)-4 in order to limit to four decimal places. The trouble with EITHER of these is that whole numbers won't match the validation. For example, 523.00 or 523.000 throw validation errors.

    Any idea how to handle these?


    This Site

    Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.

    Newest Tips
    Subscribe

    FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

    (Your e-mail address is not shared with anyone, ever.)

    View the most recent newsletter.