컴활 1급 실기 질문입니다.
1) 엑셀 본책 455p 문제3-2입니다.
주어진대로 입력했는데
'1004 런타임오류가 발생했습니다 : Scerarios클래스 중 add매서드에 오류가 있습니다. 라고 뜹니다.
이 오류는 뭘 잘못하면 뜨는건가요?
2) 엑셀 함수사전 부록 117p 실전A형 4번
이 문제에서 사용되는 vlookup 옵션을 생략하니 E39=226800 가 출력됩니다.
옵션에 false를 입력하니 128250 이 출력되어 정답으로 나왔습니다.
근데 여기서 vlookup대상이 되는 테이블의 첫열은 정확한 문자만으로 찾아내니 true나 false나 값이 똑같이 나와야 하지 않나요?
3) MATCH 함수에 관하여
엑셀함수사전 148p 2번을 풀면서 match 함수 사용에 정확한 방법을 알고싶습니다.
제가 시험하기로
A1:A4={1,2,3,4}로 입력했다고 가정하면
첫번째 케이스
=match(A1,{2,4},1) -> 오류
=match(A2,{2,4},1) ->1
=match(A3,{2,4},1) ->1
=match(A4,{2,4},1) ->2
두번째 케이스
=match(A1, {4,2}, -1) ->2
=match(A1, {4,2}, -1) ->2
=match(A1, {4,2}, -1) ->1
=match(A1, {4,2}, -1) ->1
두가지 방법 결과 차이는 A1셀 즉 1을 대입하면 오류가 나오는지 상대위치가 잘 나오는지 입니다.
이 현상이 왜 발생하는지 알고싶습니다.
감사합니다!
안녕하세요.
1.
매크로가 제대로 설정 되었는지 다시 확인 해 보시구요.
안되신다면 매크로를 모두 삭제한 후 다시 설정 하고 확인 해 보세요.
잘 안되신다면 작성하신 파일을 첨부하여 다시 질문 주시면 확인 후 답변 드리겠습니다.
2,
정확한 문자를 찾아야 하므로 옵션을 false로 지정해 주셔야 합니다.
<VLOOKUP 함수의 옵션>
- true(1) 또는 생략 : 근사값을 찾습니다. 즉 정확하게 일치하는 값이 없으면 찾을값 보다 작은 값 중에서 근사값을 찾습니다.
- false : 정확하게 일치하는 값을 찾으며 정확히 일치하는 값이 없으면 "#n/a" 오류값을 반환합니다.
정확히 일치하는 값을 찾을때 FALSE를 사용합니다.
3.
MATCH(찾을 값, 범위, 옵션)
: 범위에서 옵션을 적용하여 찾을 값과 같은 데이터를 찾아 그 위치에 대한 일련번호를 반환하는 함수입니다.
문의하신 내용은 세 번째 인수인 옵션을 살펴봐야 합니다.
<MATCH 옵션>
-1 : 찾을 값 보다 크거나 같은 값 중 가장 작은 값을 찾습니다. 범위는 반드시 내림차순으로 정렬되어 있어야 합니다.
0 : 찾을 값에서 첫번째로 정확하게 일치하는 값을 찾습니다. 범위는 정렬 되어 있지 않아도 됩니다.
1 : 찾을 값 보다 작거나 같은 값 중에서 큰 값을 찾습니다. 범위는 반드시 오름차순으로 정렬 되어 있어야 합니다.
=MATCH(A1,{2,4},1) : 옵션 1에 의해 찾을 값 1보다 작거나 같은 값 중에서 골라야 하는데, 작거나 같은 값이 존재하지 않기 때문에 오류가 발생하는 것입니다.
=match(A1, {4,2}, -1) : 옵션 -1이므로, 찾을 값 1보다 크거나 같은 값 중 가장 작은 값인 2을 반환합니다.
좋은 하루 보내세요.
-
관리자2018-12-30 22:22:25
안녕하세요.
1.
매크로가 제대로 설정 되었는지 다시 확인 해 보시구요.
안되신다면 매크로를 모두 삭제한 후 다시 설정 하고 확인 해 보세요.
잘 안되신다면 작성하신 파일을 첨부하여 다시 질문 주시면 확인 후 답변 드리겠습니다.
2,
정확한 문자를 찾아야 하므로 옵션을 false로 지정해 주셔야 합니다.
<VLOOKUP 함수의 옵션>
- true(1) 또는 생략 : 근사값을 찾습니다. 즉 정확하게 일치하는 값이 없으면 찾을값 보다 작은 값 중에서 근사값을 찾습니다.
- false : 정확하게 일치하는 값을 찾으며 정확히 일치하는 값이 없으면 "#n/a" 오류값을 반환합니다.
정확히 일치하는 값을 찾을때 FALSE를 사용합니다.
3.
MATCH(찾을 값, 범위, 옵션)
: 범위에서 옵션을 적용하여 찾을 값과 같은 데이터를 찾아 그 위치에 대한 일련번호를 반환하는 함수입니다.문의하신 내용은 세 번째 인수인 옵션을 살펴봐야 합니다.
<MATCH 옵션>
-1 : 찾을 값 보다 크거나 같은 값 중 가장 작은 값을 찾습니다. 범위는 반드시 내림차순으로 정렬되어 있어야 합니다.
0 : 찾을 값에서 첫번째로 정확하게 일치하는 값을 찾습니다. 범위는 정렬 되어 있지 않아도 됩니다.
1 : 찾을 값 보다 작거나 같은 값 중에서 큰 값을 찾습니다. 범위는 반드시 오름차순으로 정렬 되어 있어야 합니다.=MATCH(A1,{2,4},1) : 옵션 1에 의해 찾을 값 1보다 작거나 같은 값 중에서 골라야 하는데, 작거나 같은 값이 존재하지 않기 때문에 오류가 발생하는 것입니다.
=match(A1, {4,2}, -1) : 옵션 -1이므로, 찾을 값 1보다 크거나 같은 값 중 가장 작은 값인 2을 반환합니다.
좋은 하루 보내세요.
-
관리자2019-01-07 16:48:10
안녕하세요.
true를 지정하여 근사값으로 찾으려면 참조범위의 첫번째 열, 즉 H42:J46 영역의 첫번째 열에 있는 값은 반드시 오름차순으로 정렬되어 있어야 하는데, 그렇지 않으므로 반드시 false를 지정해야 합니다.
즐거운 하루 되세요.
-
*2019-01-01 22:57:47
두번째 질문에서 추가질문인데요.
그러니까 어차피 서로 매칭되는 값(k,n,d,g,y)로 첫열이 구성되는데
왜 true인지 false인지 차이가 나는건가요?
근삿값으로 할 이유가 없으니 똑같은 값이 나와야 되는거 아닌가요?