The tutorial shows how to use an Excel IF formula to see if a given number or date falls between two values.
To check if a given value is between two numeric values, you can use the AND function with two logical tests. To return your own values when both expressions evaluate to TRUE, nest AND inside the IF function. Detailed examples follow below.
Excel formula: if between two numbers
To test if a given number is between two numbers that you specify, use the AND function with two logical tests:
- Use the greater then (>) operator to check if the value is higher than a smaller number.
- Use the less than (<) operator to check if the value is lower than a larger number.
The generic If between formula is:
To include the boundary values, use the greater than or equal to (>=) and less than or equal to (<=) operators:
For example, to see if a number in A2 falls between 10 and 20, not including the boundary values, the formula in B2, copied down, is:
=AND(A2>10, A2<20)
To check if A2 is between 10 and 20, including the threshold values, the formula in C2 takes this form:
=AND(A2>=10, A2<=20)
In both cases, the result is the Boolean value TRUE if the tested number is between 10 and 20, FALSE if it is not:
In case you want to return a custom value if a number is between two values, then place the AND formula in the logical test of the IF function. For example, to return "Yes" if the number in A2 is between 10 and 20, "No" otherwise, use one of these IF statements: If between 10 and 20: If between 10 and 20, including the boundaries: Tip. Instead of hardcoding the threshold values in the formula, you can input them in individual cells, and refer to those cells like shown in the below example. Suppose you have a set of values in column A and wish to know which of the values fall between the numbers in columns B and C in the same row. Assuming a smaller number is always in column B and a larger number is in column C, the task can be accomplished with this formula: Including the boundaries: And here is a variation of the If between statement that returns a value itself if TRUE, some text or an empty string if FALSE: Including the boundaries: When smaller and larger numbers you are comparing against may appear in different columns (i.e. number 1 is not always smaller than number 2), use a slightly more complex version of the formula. Here, we first test if the target value is higher than a smaller of the two numbers returned by the MIN function, and then check if it is lower than a larger of the two numbers returned by the MAX function. To include the threshold numbers, adjust the logic as follows: For example, to find out if a number in A2 falls between two numbers in B2 and C2, use one of these formulas: Excluding boundaries: Including boundaries: To return your own values instead of TRUE and FALSE, use the following Excel IF statement between two numbers: OrIf between two numbers then
=IF(AND(A2>10, A2<20), "Yes", "No")
=IF(AND(A2>=10, A2<=20), "Yes", "No")
=IF(AND(A2>B2, A2<C2), "Yes", "No")
=IF(AND(A2>=B2, A2<=C2), "Yes", "No")
=IF(AND(A2>10, A2<20), A2, "Invalid")
=IF(AND(A2>=10, A2<=20), A2, "Invalid")
If boundary values are in different columns
=AND(A2>MIN(B2, C2), A2<MAX(B2, C2))
=AND(A2>=MIN(B2, C2), A2<=MAX(B2, C2))
=IF(AND(A2>MIN(B2, C2), A2<MAX(B2, C2)), "Yes", "No")
=IF(AND(A2>=MIN(B2, C2), A2<=MAX(B2, C2)), "Yes", "No")
Excel formula: if between two dates
The If between dates formula in Excel is essentially the same as If between numbers.
To check whether a given date is within a certain range, the generic formula is:
Not including the boundary dates:
However, there is a caveat: IF does recognize dates supplied directly to its arguments and regards them as text strings. For IF to recognize a date, it should be wrapped in the DATEVALUE function.
For example, to test if a date in A2 falls between 1-Jan-2022 and 31-Dec-2022 inclusive, you can use this formula:
=IF(AND(A2>=DATEVALUE("1/1/2022"), A2<=DATEVALUE("12/31/2022")), "Yes", "No")
In case, the start and end dates are in predefined cells, the formula becomes much simpler:
=IF(AND(A2>=$E$2, A2<=$E$3), "Yes", "No")
Where $E$2 is the start date and $E$3 is the end date. Please notice the use of absolute references to lock the cell addresses, so the formula won't break when copied to the below cells.
Tip. If each tested date should fall in its own range, and the boundary dates may be interchanged, then use the MIN and MAX functions to determine a smaller and larger date as explained in If boundary values are in different columns.
If date is within next N days
To test if a date is within the next n days of today's date, use the TODAY function to determine the start and end dates. Inside the AND statement, the first logical test checks if the target date is greater than today's date, while the second logical test checks if it is less than or equal to the current date plus n days:
For example, to test if a date in A2 occurs in the next 7 days, the formula is:
=IF(AND(A2>TODAY(), A2<=TODAY()+7), "Yes", "No")
If date is within last N days
To test if a given date is within the last n days of today's date, you again use IF together with the AND and TODAY functions. The first logical test of AND checks if a tested date is greater than or equal to today's date minus n days, and the second logical test checks if the date is less than today:
For example, to determine if a date in A2 occurred in the last 7 days, the formula is:
=IF(AND(A2>=TODAY()-7, A2<TODAY()), "Yes", "No")
Hopefully, our examples have helped you understand how to use the If between formula in Excel efficiently. I thank you for reading and hope to see you on our blog next week!
Practice workbook
Excel If between - formula examples (.xlsx file)
158 comments
I need a formula to give me a fixed percentage based on two figures. Looking at the retirement fund lump sum withdrawal benefits tax income table (how much will the member be taxed on) I want to build a formula that once I put the person's fund value in one cell it will show me the percentage taxable in another cell.
Table is as follow:
Between 1 - 27 500 = 0%
Between 27 501 - 726 000 = 18%
Between 726 001 - 1 089 000 = 27%
Between 1 089 001 and above = 36%
Hi!
Please check out the following article on our blog, it’ll be sure to help you with your task: Excel nested IF statement - multiple conditions in a single formula.
Hi Guys,
Firstly, thanks for the great content. It's helped me a lot (but I'm stuck!)
I'm trying to compare 2 numbered lists.
In List A, I have a list of numbers ranging from 6-11 digits in length, where each cell (A2, An) is a unique number.
In List B, I have a different format, where column E & F are called Low Range & High Range respectively. It's purpose is to create a range where the number is sequential and doesn't break, if it breaks, it moves to the next range.
For Example:
The following numbers are depicted differently in both Lists below (200000, 200001, 200002, 200004, 200006, 200007, 200008, 200010)
List A:
Cell A2 = 200000
Cell A3 = 200001
Cell A4 = 200002
Cell A5 = 200004
Cell A6 = 200006
Cell A7 = 200007
Cell A8 = 200008
Cell A9 = 200010
List B:
Cell E2 (Low Range) = 200000 - Cell F2 (High Range) = 200002 (i.e. includes 200001)
Cell E3 (Low Range) = 200004 - Cell F3 (High Range) = 200004
Cell E4 (Low Range) = 200006 - Cell F4 (High Range) = 200008 (i.e. includes 200007)
Cell E5 (Low Range) = 200009 - Cell F5 (High Range) = 200009
Problem I'm trying to solve:
I'm trying to compare each cell (A2, An) in List A to each Low Range & High Range (Column E & F) combination. I have it working when I specify an individual cell in List A (A2) and compare it to E2 & F2 in List B using the following formula:
=IF(AND(A2>=E1,A2<=F1),"YES","NO")
What I can't figure out is, how can I compare each cell in List A to each Low Range & High Range pairing in List B?
The expected output would be in List B, where B2-B8 = YES and B9 = NO (i.e. 200010 is not in any of the 4 ranges listed in List B)
Let me know if you have any further questions and thanks again for looking into this for me!
Hello!
If I understand your task correctly, the following formula should work for you:
=IF(SUM((Sheet1!A1>=Sheet2!$A$1:$A$4)*(Sheet1!A1<=Sheet2!$B$1:$B$4)),"yes","no")
Copy it down along the column
You Sir are a genius! Many thanks Alexander!
Trying to get a formulae to work which will populate a cell.
If A2 is between 1-6 then in H2 will show Low, if A2 is between 7-12 then in H2 will show Medium, if A2 is between 13-16 then in H2 will show High,
Cell A2 is a formulae arrived from other cells
tried the If statements but don't appear to work
Hi!
Look for the example formulas here: Nested IF in Excel – formula with multiple conditions.
Condition
From- 1-Jan-23 (to) 10-Jan-23
within A,B,C & D, i have to mention "YES" if "A" contains dates fulfilling the above condition or "No" . likewise for B,C & D. Kindly help.
A 5-Jan-23 to 10-Feb-23
B 11-Jan-23 to 10-Feb-23
C 1-Jan-23 to 7-Jan-23
D 11-Jan-23 to 10-Feb-23
Hello!
If I understand correctly, each date interval is written as text in a cell. You can't do any calculations with text. You can apply the recommendations described in the article above only if each date is written in a separate cell. To split the text into separate cells, I recommend using this instruction: Split string by delimiter or pattern, separate text and numbers. Then convert the text to date as described in the article at the link.
Hello, I'm trying to create a spreadsheet which returns overdue, active and imminent using the following formula. How can I express that when the date is 6 it returns OVERDUE. At the moment the imminent command is cancelling out the dates which should return ACTIVE.
=IF(TODAY()>=H3+7,"OVERDUE",IF(TODAY()<H3+4,"IMMINENT",IF(TODAY()<H3+6,"ACTIVE",)))
sorry, that didn't make sense.
I want it to display IMMINENT when TODAY is 6 from the date in H3.
oh boy, I'm sorry, the formula keeps changing when I post .
I want it to display IMMINENT when TODAY is greater than 4 but less than 6 compared with the date in H3.
Hi!
Based on your description, it is hard to completely understand your task. However, I’ll try to guess and offer you the following formula:
=IF(TODAY()>=H3+7,"OVERDUE",IF(AND(TODAY()>=H3+4,TODAY()<=H3+6),"IMMINENT",IF(TODAY()<H3+4,"ACTIVE",)))
Hi!
I'm sorry, I'm afraid these pieces of info are not enough to give you a formula. Describe in detail the criteria for each of the three options and I will try to help
Thank You Alexander,
What I'm trying to create is a list of duties which need to be completed every 7 days.
In the H column, I want members of my team to type in the date that they last did the duty.
If the date inputted is more than 7 days from TODAY, I want the column with the formula in to to display "OVERDUE"
If the date is less than 7 but more than 2 days from TODAY, I what it to display "ACTIVE"
If the date is 2 days before TODAY, I want it to display IMMINENT
I have inherited the formula below but it never displays "IMMINENT". I am trying to amend this formula so that 2 days before it says OVERDUE, It flags up that the duty is imminent.
=IF(TODAY()>=H3+7,"OVERDUE",IF(TODAY()<H3+6,"ACTIVE", "IMMINENT" ))
Sorry, I hadn't seen your 2.16 reply. I'm not sure my 2.30 message made sense. I've just trying the formula you suggested.
Hi!
Try this formula
=IF(TODAY()>=H3+7,"OVERDUE",IF(TODAY()>H3+2,"ACTIVE", "IMMINENT"))
Hi,
I am trying to add comment Late or On time based on 2 dates: I have a column for due date and a column for actual date
If due date and actual date are the same or actual date is earlier - then its on time
If actual date is later than due date its late.
How would I build this please?
Hi!
Compare two dates using the IF function:
=IF(A1>=B1, "On time", "Late")
Hello,
I want to input in a cell:
if value in N3 is between 0 and 7, then "7 days", if between 0 and 14, then "14 days", if between 0 and 30, then "30 days", if between 0 and 60, then "60 days"
I would appreciate your help
Hi!
Pay attention to the first paragraph of the article above. It covers your case completely.
I'm trying to create myself a time sheet - if I work less than 8 hours, i get a 30 min lunch break and if i work more than 8 hours i get a 45 min lunch break. So I've played around with a lot of different ways to do this, what i think isnt working is trying to get it to return a value in minutes. This is where I've got (but this doesnt work):
=IFS(D2=timevalue"8:00",timevalue"00:45")
Hi!
Use the TIME function to get a specific time value.
IFS(D2=time(8,0,0),time(0,45,0))
i have an urgent column with yes or no, and a date column. I want to create a due date by adding either 2 days if yes and 7 days if no.
Hi!
For multiple conditions, you can use the IFS function
=IFS(B1="yes",A1+2,B1="no",A1+7)
I want to have a formula of startdate-31/12/22 but if startdate if lower than 01/01/22 then it will be just 12
Hello, i have struggle to find a formula for this " if up to 70% then 80%,if between 50%-70% then 50% and if between 40%-50% then 40%. I need this all in one row.
Thank you
Hi!
The answer to your question can be found in this article: Nested IF in Excel – formula with multiple conditions.
I am struggling to have multiple formula to create a target date for task completion.
Column A has revision numbers of the document ranging from 0 to 4
Column B has start date
Column C should be target date (if Column A contains 0, the Column C should be +14 days, - formula is =IF(C4=1,WORKDAY.INTL(NB,7,16)). I would like to repeat the same formula with different C column values for at least 4 times.
Hi!
Your formula does not match your question. I'm sorry, I'm afraid these pieces of info are not enough to give you a formula. Describe in detail what problem you have, and I will try to help you.
I need to calculate commissions based on % of MSRP by product line.
The % off of MSRP can vary between these cutoff amounts. Ie, the % MSRP could be 94% or 73%, the amounts don't always fall along these specific cutoff values but at these cutoff values, the commission rate changes:
Column on worksheet % of MSRP % of MSRP % of MSRP
Product Line = 100% >= 92.50% >= 75%
column S 9% 6% 3%
column T 9% 6% 3%
column U 1% 1% 1%
column V 4% 2% 1%
MSRP is in column AD
I need assistance with the formula to calculate the commission if a sale falls between these cutoffs.
Thank you!
Hi!
If I understand the problem correctly, you can find the necessary instructions in the article above, as well as in this guide: Excel Nested IF statement.
hi if you can pls help
A B C D E F G
Week # Week # Vendor Amount Date
Wed 12/8/2021 1 1 11/30/2021
Wed 12/22/2021 2 1 11/30/2021
Wed 1/5/2022 3 2 12/13/2021
Wed 1/19/2022 4 2 12/16/2021
Wed 2/2/2022 5 2 12/20/2021
Wed 2/16/2022 6 3 12/23/2021
Wed 3/2/2022 7 3 12/25/2021
column "A" has a list of dates Column "B" has a list of the week number now when I enter a date in Column "G" column "D" should find the correct "week #" from column "B"
Hi!
You can use the VLOOKUP formula to find the week number from a list of dates.
I also recommend paying attention to the WEEKNUM function to get the week number.
thank you for the quick reply
the week number i have in column "B" is not the standard week number
the date i have in column "G" is not in Column "A" since the date in column "G" is a date between 2 rows in column "A"
any other sugetions?
abe
Hi!
I am not sure I fully understand what you mean.
Hello,
I am trying to display a text value if a number between 198.4 and 350.5 is displayed, but the formula is not working for me, I am entering this formula:
=IF(AND(C5>MIN199,C5<MAX351),"FritsJurgens - System M+ - 70mm - Class D - Rectangular - Black","BLANK")
I am struggling a LOT with this....
Thank you ! :)
Hi!
Please read the above article carefully.
Instead of AND(C5>MIN199,C5<MAX351) use AND(C5>199,C5<351)
Hello,
I swear I've done this before but can't for the life of me recall...I have two tables:
Table 1: Column C = a number I enter, Column D = a corresponding text based on table 2
Table 2: Column A = a lower limit, Column B = an upper limit, Column C = text
What I'm looking to do is IF Table 1, C = 10, so it is >= Table 2 Column A and <= Table 2 Column B, then Table 1 D = Column C in Table 2
Hopefully that explains my conundrum.
Thank you!
Hi Jeanette,
In essence, you build a formula as explained in the "If between two numbers then" example, but instead of the hardcoded values, supply the corresponding references.
Assuming your table 2 is on Sheet2 beginning in row 2, use the following formula for D2 in table 1:
=IF(AND(C2>=Sheet2!A2, C2<=Sheet2!B2), Sheet2!C2, "")
And then drag it down across as many rows as needed.
Hi,
I'm currently building a number sequence, using 5 columns and 50 rows. The numbers can't >9 if so they should +1 to the next row.
for example you enter 51410 in the respective 5 columns and underneath it then starts counting up from 51410 to 51411 etc.
I have been using the IF(AND function however eventually this sequence counts up from 9 going over the maximum value of 9.
Example,
A2 = 8 A3 =9
B2 = IF(AND(F63>=9,E63>=9),"0",E63+1)
B3 = IF(F63=9,"0",SUM(F63,1))
is there any way around this.
Hi!
Sorry, I do not fully understand the task. I don't see a relation between your question and the example. Write an example of the data you want to get. Try this instruction to create a sequence of numbers: SEQUENCE function in Excel - auto generate number series.
Hello,
I would like to calculate how many instances of a word based on the date range formula - example below using November 2022 as range:
Column C contains dates
Column F contains word: high, medium or low
Date range I am happy with & returns a value: =COUNTIFS($C:$C,">=01/11/2022",$C:$C,"<=30/11/2022")
But I am struggling (without using VBA or variables) to bring back the number of instances of the word for that range?
Hope it makes sense!
Hello!
Add one more condition to the COUNTIFS formula.
=COUNTIFS($F:$F,"high", $C:$C,">=01/11/2022",$C:$C,"<=30/11/2022")
How can I do a nested If statement with one of the the look up variables is a #. I have tried using wild cards, but end up with the same results.
=IF((Z2-Y2)0,"Late", IF(OR(COUNTIF(Z2, "*"&"#"&"*")), "not received ", "")))
The z2 and Y2 are date fields. The result is the same for the # it says #value!
Hello!
The answer to your question can be found in this article: COUNTIF formulas with wildcard characters (partial match). I hope my advice will help you solve your task.
Hi guys,
here is my dilemma, if this can be done in excel or not.
I created a poker tracker sheet in excel to track my winnings on freerolls I play in, on various poker sites.
Now,
in Column D is my buy in, column E is won bounty and column H is price I won, and in column J is client name.
Now, how can I calculate in column K for each separate site and track my winnings from each separate site in column K??
Is it possible??
I.e. IF client name is GG then total winnings are....
IF client name is PS then total winnings are....
I wish I could post a screenshot to explain better what I mean.
Sincerely,
Bonc
Hello!
To calculate a sum based on one or more criteria, use the SUMIFS function. Look for the example formulas here: Excel SUMIFS and SUMIF with multiple criteria – formula examples. This should solve your task.