내 VLOOKUP 수식이 모든 셀을 보간하지 않습니다.
AD AE AF
11-6-2014 15:20 90,4 #N/A
11-6-2014 15:21 89,1 #N/A
11-6-2014 15:22 90,4 Good
11-6-2014 15:23 89,1 Good
AF 열은 내 공식입니다: (네덜란드어) =AE4-(VERT.ZOEKEN(AD4;$AL$3:$AM$39714;2;WAAR)-1000) (영어로 번역 시도) =AE4-(VLOOKUP(AD4;$ AL$3:$AM$39714;2;참)-1000)
이는 행렬 열의 일부입니다.
AL AM
11-6-2014 15:22 1026,9
11-6-2014 15:23 1027,3
11-6-2014 15:24 1027,2
11-6-2014 15:25 1026,9
2014년 11월 6일 15시 22분의 내 데이터(1026.9)가 발견되었습니다. 하지만 이 값이 2014년 11월 6일 15:20 및 2014년 11월 6일 15:21에도 보간되기를 원합니다. Afaik은 가장 가까운 날짜를 조회하고 행렬의 값을 출력해야 하지만 그렇지 않습니다.
어떤 아이디어가 있나요?
답변1
이는 매개변수를 로 설정했을 VLOOKUP
때 작동하도록 설계된 방식입니다 . 조회 값보다 작거나 같은 가장 가까운 값의 값을 반환합니다. 해당 기준을 충족하는 값이 없으면 오류가 반환됩니다.Range Lookup
TRUE
몇 가지 옵션이 있습니다:
하한 미만의 값에 대해서는 예외를 설정하고
VLOOKUP
나머지는 처리하도록 합니다. 이렇게 하려면 함수를IFERROR
함수로 래핑하면 됩니다.=IFERROR(AE4-(VLOOKUP(AD4;$AL$3:$AM$39714;2;True)-1000);AE4-$AM$3)
이는 오류가 발생하는 모든 조회를 기본적으로 열의 첫 번째 값으로 설정합니다
AM
.대신 조회 값보다 작거나 같은 가장 가까운 날짜뿐만 아니라 가장 가까운 날짜에 대한 데이터를 반환하려는 경우
VLOOKUP
. 아래 배열 수식은AM
가장 가까운 날짜의 값을 반환합니다. 날짜 사이의 중간 지점은 이후 날짜에 매핑됩니다.=AE4-INDEX($AM$3:$AM$39714,MAX(IF(ABS($AL$3:$AL$39714-AD4)=MIN(ABS($AL$3:$AL$39714-AD4)),ROW($AL$3:$AL$39714)-2,-1)))
Ctrl배열 수식이므로 반드시 + Shift+ 를 눌러 입력해야 Enter정상적으로 작동합니다. 이 작업이 올바르게 수행되면 중괄호로 묶인 수식 입력줄에 표시됩니다.
당신과 같은 긴 배열을 사용하면 (N= 39,712), 배열 수식은 계산 속도가 느려지고 스프레드시트를 느리게 만들 수 있습니다. 따라서 사용할 방법을 결정할 때 이를 고려하십시오.