We all know that data validation is a very useful feature in Excel. You can use data validation to create a drop-down list in a cell and limit the values user can enter. But, do you know that you can use data validation in a multitude of ways to prevent users from entering wrong data?
Here is a practical application: Prevent users from entering duplicate values in a range of cells.
For eg. you are making an invoice. Wouldn’t it be cool if Excel prompted you when you enter a duplicate line item so that increase the item quantity instead of repeating it.
Here is a 3 step tutorial to do just that.
Step 1: Identify the range of cells where you want only unique values to be entered
This is simple. All you have to do is find the range where you want to control the user input. Lets say the range is B4:B11
Step 2: Set up Data Validation to prevent duplicate entries
Select the range (B4:B11) and go to data validation (Excel 2007: Data Ribbon > Data Validation, or press ALT+AVV)
Now, specify the validation type as “Custom”, this will allow us to use formulas to check for valid data. In our case, we need check if a particular entry is duplicated in the range B4:B11. This can be easily done using COUNTIF formula [learn COUNTIF Formula in plain English].
Go to the formula field and type the countif formula like this: =COUNTIF($B$4:$B$11,B4)<=1
Also, you can set up the “Error Alert” so that you can show a custom message when a duplicate value is typed, like “You have already added that product” message.

Once you set up error message, it will show up like this:

Step 3: Sit back and Relax
The third step is all too familiar. Now that you have prevented duplicate entries in your spreadsheets you can sit back and relax. May be read a few more spreadcheats.
More kickass stuff on data validation (and working with duplicates) using excel
There are a ton of useful articles on the site related to data validation and working with duplicates using excel. Here is a sample. Get started and learn something useful today.
- Data Validation Tricks in Excel [with downloadable tutorial]
- Remove Duplicate Values from a Range in Excel
- Using Array formulas to find if a list has duplicates
- Working with duplicate items in Excel [several examples]
- Examples & Articles on Excel Data Validation
This post is part of our spreadcheats series (yes, the series is still going after one year 😛 )














13 Responses to “Convert fractional Excel time to hours & minutes [Quick tip]”
Hi Purna..
Again a great tip.. Its a great way to convert Fractional Time..
By the way.. Excel has two great and rarely used formula..
=DOLLARFR(7.8,60) and =DOLLARDE(7.48,60)
basically US Account person uses those to convert some currency denomination.. and we can use it to convert Year(i.e 3.11 Year = 3 year 11 month) and Week(6.5 week = 6 week 5 days), in the same manner...
This doesn't work for me. When applying the custom format of [h]:mm to 7.8 I get 187:12
Any ideas why?
@Jason
7.8 in Excel talk means 7.8 days
=7.8*24
=187.2 Hrs
=187 Hrs 12 Mins
If you follow Chandoo's instructions you will see that he divides the 7.8 by 24 to get it to a fraction of a day
Simple, assuming the fractional time is in cell A1,
Use below steps to convert it to hours & minutes:
1. In the target cell, write =A1/24
2. Select the target cell and press CTRL+1 to format it (you can also right click and select format cells)
3. Select Custom from “Number” tab and enter the code [h]:mm
4. Done!
Hi, sorry to point this out but Column C Header is misspelt 'Hours Palyed'
good one
So how do I go the other way and get hours and minutes to fractional time?
If you have 7.5 in cell A1,
- Use int(A1) to get the hours.
- Use mod(A1,1)*60 to get minutes.
If you have 7:30 (formatted as time) in A1
- Use hours(a1) to get hours
- Use minutes(a1) to get minutes.
I had the same issue. You can solve it by changing the format as described above:
Right click cell > Format Cells > (In Number tab) > Custom > Then enter the code [h]:mm
([hh]:mm and [hhh]:mm are nice too if you want to show leading zeros)
Thanks guys, these are the tips I'm looking for.
...dividing the number of minutes elapsed by the percent change is my task - "int" is the key this time
It doesnt work for greater than 24 hours
It returns 1:30 for 25.5 hours. It should have returned 25:30
Ideally I would right function as
=QUOTIENT(A1,1)&":"&MOD(A1,1)*60
Sorry, replied to wrong comment....
----
I had the same issue. You can solve it by changing the format as described above:
Right click cell > Format Cells > (In Number tab) > Custom > Then enter the code [h]:mm
([hh]:mm and [hhh]:mm are nice too if you want to show leading zeros)
Clever use of MOD here to extract the decimal part of a number. Divide a number containing a decimal by 1 and return the remainder. Humm. Very clever.
Thanks very much, extremely useful !