How to determine the closest value?

  • Thread starter Thread starter Eric
  • Start date Start date
E

Eric

Does anyone have any suggestions on how to determine the closeest number?
Example One
There is a list of number under column A
191,189,183,177,175,171,167,165,159,153,151
and there is a given number in cell B1, 154.
I would like to determine the closest number, which match with the number in
cell B1. On above example, it should return 153 in cell C1.

Example Two
There is a list of number under column A
191,189,183,177,175,171,167,165,155,153,151
and there is a given number in cell B1, 154.
I would like to determine the closest number, which match with the number in
cell B1. On above example, if the given number matches two numbers, which the
difference is the same, then it should return 155 in cell C1.
Does anyone have any suggestions?
Thanks in advance for any suggestions
Eric
 
Eric said:
Does anyone have any suggestions on how to determine the closeest number?
Example One
There is a list of number under column A
191,189,183,177,175,171,167,165,159,153,151
and there is a given number in cell B1, 154.
I would like to determine the closest number, which match with the number
in
cell B1. On above example, it should return 153 in cell C1.

Example Two
There is a list of number under column A
191,189,183,177,175,171,167,165,155,153,151
and there is a given number in cell B1, 154.
I would like to determine the closest number, which match with the number
in
cell B1. On above example, if the given number matches two numbers, which
the
difference is the same, then it should return 155 in cell C1.
Does anyone have any suggestions?
Thanks in advance for any suggestions
Eric

One way:-
Start with VLOOKUP() to get an exact match if there is one or the next
highest number if not.
Then calc the differerence between the target and the VLOOKUP result
Then cal the difference between the target and the next lower cell to the
one returned by VLOOKUP
Then compare the 2 differences and use whatever logic you prefer to choose
the cell returned by VLOOKUP or the cell below it.

If your list is horizontal then use HLOOKUP instead.
 
Hi,

Try this

=INDEX(A1:A11,MATCH(MIN(ABS(A1:A11-B1)),ABS(A1:A11-B1),))

This is an array formula which must be entered by pressing CTRL+Shift+Enter
and not just Enter. If you do it correctly then Excel will put curly brackets
around the formula {}. You can't type these yourself. If you edit the formula
you must enter it again with CTRL+Shift+Enter.

Mike
 
Back
Top