계산문제 2번 에서
희귀약품부담금 식에서요 ( 참조 제외하고 식 썼습니다!)
=IFERROR( I3 * VLOOKUP( I3, A34:D37, MATCH (G3. B33:D33, 1) +1 ) VLOOKUP(I3, A34 ; D37, MTCH( G3, B33:D33, 1 ) +1 )
여기서
MATCH함수 뒤에 +1이 붙는데 왜 붙는지 궁금하고요
그리고 식을 자체 이해 못하겠습니다.ㅠㅠ +1이 붙어서 더 헷갈리네요
아 추가로 3번문제에서 MID함수 뒤에 *1이 붙는 이유가
MID함수가 Flase true값만 반환해서 0또는 1의 값을 같기 때문에 *1이라는 식을 써서 개수를 나타낸 다음,
조건은 =f34를 뒤에 쓴건가요?
IFERROR(I3*VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1), VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1))
식이나 식 자체의 값이 오류가 나면 오류값을 표시합니다.
I3*VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1)
은 식이 오류가 아니면 이 식을 그대로 계산하여 표시하고
이 값이 오류가 나면
VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1
의 값을 반환하는 것이죠.
IFERROR(I3*VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1), VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1))
중
VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1
에서 vlookup 의 범위 a34:d37 과 macth의 범위 b33:d33 이 다르기 때문입니다.
열이 틀려서 인 것이죠.
vlookup의 범위는 a열부터 4열 이고 match의 범위는 b열 부터 3열 이므로
match에서 나온 결과를 vlookup의 열로 찾게 되면 한줄씩 당겨져서 표시가 됩니다.
그러므로 vlookup의 결과와 같게 표시하기 위해서 +1 을 하는 것입니다.
sum((조건1)*(조건2)*값을구할범위)
sum(if((조건1)*(조건2),값을구할범위)
로 조건들은 * 나 + 로 and or 을 적용하셔야 하고
if 가 있는지 없는지에 따라 값을 구할범위를 * 로 연결할지 , 로 사용할지를 판단하시면 됩니다.
if(조건,참,거짓) 이므로 조건이 모두 참이면 값을구할범위에서 값을 반환하고 합계를 구하게 되는 것입니다.
좋은 하루 되세요.
"-
*2015-03-05 06:34:26
IFERROR(I3*VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1), VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1))
식이나 식 자체의 값이 오류가 나면 오류값을 표시합니다.
I3*VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1)
은 식이 오류가 아니면 이 식을 그대로 계산하여 표시하고
이 값이 오류가 나면
VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1
의 값을 반환하는 것이죠.
IFERROR(I3*VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1), VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1))
중
VLOOKUP(I3,$A$34:$D$37,MATCH(G3,$B$33:$D$33,0)+1
에서 vlookup 의 범위 a34:d37 과 macth의 범위 b33:d33 이 다르기 때문입니다.
열이 틀려서 인 것이죠.
vlookup의 범위는 a열부터 4열 이고 match의 범위는 b열 부터 3열 이므로
match에서 나온 결과를 vlookup의 열로 찾게 되면 한줄씩 당겨져서 표시가 됩니다.
그러므로 vlookup의 결과와 같게 표시하기 위해서 +1 을 하는 것입니다.
sum((조건1)*(조건2)*값을구할범위)
sum(if((조건1)*(조건2),값을구할범위)
로 조건들은 * 나 + 로 and or 을 적용하셔야 하고
if 가 있는지 없는지에 따라 값을 구할범위를 * 로 연결할지 , 로 사용할지를 판단하시면 됩니다.
if(조건,참,거짓) 이므로 조건이 모두 참이면 값을구할범위에서 값을 반환하고 합계를 구하게 되는 것입니다.
좋은 하루 되세요.
"