2012-08-16 2 views
4

나는 여기에 거대하지만 다음 엑셀 설치가 간단한 설정되어 있습니다찾기 값

 A  B   C  D  E 
    1 Site1 X-Given Y-Given Site2 X-New-Given 
    2 A  10  400  A  15   
    3 A  20  500  A  25   
    4 A  30  600  A  30   
    5 A  40  700  B  35   
    6 A  50  800  B  30   
    7 B  2   400  B  15   
    8 B  25  500  B  25   
    9 B  300  600  B  30 

이 내가 할 노력하고있어입니다 :

을 감안할 값 "열 E"에서 값을 찾으려고합니다 < = "열 E"의 값이 같은 사이트에있는 한

그런 다음 동일한 값을 " 열 E "

그래서 원하는 수식을 덜 값보다에 더 큰 가치를 가진 하나 하나 두 개의 셀 것

Example 1: Given 15 (E2) ---> would return "10" (from B2) and "20" (from B3) 
Example 2: Given 15 (E7) ---> would return "2" (from B7) and "25" (from B8) 

당신은 출력이 나는 것 같다 수없는 부분 인 사이트에 따라 달라질 것이라고 볼 수 있듯이 파악!

+0

"열의 끝"은 무엇을 의미합니까? 그리고 B3은 10이 아니라 20을 반환 할 것입니다. – karatedog

+1

감사합니다. 잘못된 예를 유감스럽게 생각합니다! @karatedog –

+0

@EricEscobar - E 열의 값을 가져 와서 동일한 'Site1'에서 모든 값을 찾고 직전과 직후의 범위에서 두 값을 반환하겠습니까? 즉, 모든 값을 찾고 싶지 않고 양쪽에서 첫 번째 값만 찾고 싶습니까? – RocketDonkey

답변

6

다음은 Enter뿐만 아니라 Control + Shift + Enter로 입력 한 배열 수식입니다. 올바르게 입력하면 Excel에서 중괄호를 넣습니다. 직접 중괄호를 입력하지 마십시오.

적은

{=MAX(($A$2:$A$9=D2)*($B$2:$B$9<=E2)*($B$2:$B$9))} 

{=MIN(IF((($A$2:$A$9=D2)*($B$2:$B$9>=E2)*($B$2:$B$9))=0,"",$B$2:$B$9))} 

소신은 같거나 E2 적은의 사이트에 대한 가장 큰 값을 찾습니다. 큰 값은 E2보다 크거나 같은 사이트에 대해 가장 작은 값을 찾습니다. 나머지는 채우기를하십시오.

수식의 배열은 FALSE의 경우 0을 반환하고 TRUE의 경우 1을 반환하므로 MIN은 행 중 하나가 FALSE 인 경우 항상 0을 반환합니다. 그래서 IF 문을 사용해야합니다. FALSE에 문자열을 삽입하면 MIN은 문자열을 무시하기 때문에 문자열을 무시합니다.

+0

굉장한 대답! – RocketDonkey