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

    Selecting Individual Cells in a Table

    Many times before applying formatting or doing another operation, you need to select an individual cell in a table. ...

    Discover More

    Reversing Cell Contents

    Macros are great at working with text. This tip presents an example that shows this versatility by reversing the contents ...

    Discover More

    Copying and Pasting without Affecting the Clipboard

    Just about everyone knows the simple ways of copying and pasting using the Clipboard. What if you want to copy and paste, ...

    Discover More

    Solve Real Business Problems Master business modeling and analysis techniques with Excel and transform data into bottom-line results. This hands-on, scenario-focused guide shows you how to use the latest Excel tools to integrate data from multiple tables. Check out Microsoft Excel 2013 Data Analysis and Business Modeling today!

    More ExcelTips (ribbon)

    Handling Validation for Proper Latitude

    When setting up Excel for data entry, you often have to be concerned with what values are acceptable. For example, if ...

    Discover More

    Prohibiting Single-Digit Entries in a Cell

    The Data Validation capabilities of Excel can be very helpful when you are trying to control what people can enter into a ...

    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
    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}] 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 three less than 3?

    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.