Q.1 문제2-2.
->VLOOKUP(), MATCH() 함수 사용
풀이 중, MATCH()+1을 해주어야 답이 나오더라구요.
왜 +1을 해주는지가 궁금합니다.
* 추신: 지난 문제들 풀이 중, MATCH(), INDEX()를 사용하는 경우에는 보통 MATCH()가 행을 구할때 썼잖아요.
그런데 그때는, 배열을 제가 지정해 놓은 상황이니, 알아서 MATCH()가 행을 표시해줬는데..
(이 문제를 풀때는) 제 생각에는, '국어'과목이 표 전체로 보면 2열이지만, MATCH()를 써줄때는 ,'국어','과학','사회'를 참조하니 1열로 인식한것 같아요.
너무 헷갈리네요. INDEX()랑 써줄때는 알아서 인식을 했는데 말이죠 ㅠㅠ
답변을 주시면 감사하겠습니다.
Q.1 문제2-3.
풀이를 보면,
Public Function fn기타(반영점수)
if 반영점수 >=10 Then
for a = 1 To 반영점수/10
fn기타 = fn기타 & "■"
Next a
Else
fn기타 = "노력요함"
End if
End Function
이잖아요.
궁금증1
for a 말고 for aa를 써줘도 되는지, (만약 된다면, 그대로 Next a 말고 Next aa)를 써줘도 되는지 궁금합니다.
왜냐하면, 예전문제들 중 msgbox 문제를 풀때, dim aa를 사용하는 경우에 aa가 습관이 되었어서 항상 그렇게 했거든요.
(어떤문제는 dim aa, 또 다른 문제는 dim a 라고 있었을때 아무거나 사용해도 무방했기 때문입니다.)
궁금증2
for a ~ Next a까지 통채로 이해가 되질 않아요.
1 To 반영점수 /10 부분에서 1이 증가값인지?, 만약 맞다면 생략하면 증가값이 1이라고 하더라구요.
생략하면 어떻게 표기를 하면되는지?
또, fn기타 = fn기타 & "■" 여기서도, 왜 fn기타를 2번써서 =로 해주는지도 모르겠고,
마지막으로, Next a 이렇게 구문을 마침 해주는건가요?
이것도 모르겠네요 ㅠㅠ
질문이 많아 죄송합니다. 꼭 실기 합격을 하고 싶어가지구요.
새해복 많이 받으세요^^
항상 친절히 답변해주셔서 감사드립니다.!
안녕하세요.
1.
표3에서 두번째 열에 있는 국어 점수를 표시하려면
VLOOKUP 함수의 범위에서는 두번째 열이지만
MATCH 함수에서 국어를 찾으면 결과값은 1입니다.
MATCH 함수의 결과값 1에 1을 더해야만 VLOOKUP 함수의 두번째 열에 있는 값을 표시할 수 있으므로 +1을 해준 것입니다.
2-1.
네, 변수는 임의로 지정하는 것이므로 aa로 사용하셔도 됩니다.
대신 for aa~ 로 작성하셨다면 Next에서도 aa로 마무리 해 주셔야 합니다.
2-2.
step 1 이 생략된 것으로 증가값은 1입니다.
fn기타 = fn기타 & "■"는
기존의 fn기타 에다가 & "■" 를 연결해서 fn기타에 다시 넣는 것입니다.
fn기타 = fn기타 & "■"
a가 1일때 실행하면 아무것도 입력되어 있지 않은 fn기타의 값과 "■"를 연결하여 fn기타에 넣으므로, fn기타에는 "■"가 들어가 있습니다.
a가 2일때 실행하면 fn기타에 입력되어 있던 "■"에 "■"를 연결하여 fn기타에 저장하므로 "■■"가 됩니다.
a가 3일때 실행하면 fn기타에 입력되어 있던 "■■"에 "■"를 연결하여 fn기타에 저장하므로 "■■■"가 됩니다.
for 문의 변수를 a로 지정했으므로
Next a 로 마무리 하는 것입니다.
좋은 하루 보내세요. 새해에도 행복하세요.
-
관리자2019-02-03 21:54:54
안녕하세요.
1.
표3에서 두번째 열에 있는 국어 점수를 표시하려면
VLOOKUP 함수의 범위에서는 두번째 열이지만
MATCH 함수에서 국어를 찾으면 결과값은 1입니다.
MATCH 함수의 결과값 1에 1을 더해야만 VLOOKUP 함수의 두번째 열에 있는 값을 표시할 수 있으므로 +1을 해준 것입니다.
2-1.
네, 변수는 임의로 지정하는 것이므로 aa로 사용하셔도 됩니다.
대신 for aa~ 로 작성하셨다면 Next에서도 aa로 마무리 해 주셔야 합니다.
2-2.
step 1 이 생략된 것으로 증가값은 1입니다.
fn기타 = fn기타 & "■"는
기존의 fn기타 에다가 & "■" 를 연결해서 fn기타에 다시 넣는 것입니다.
fn기타 = fn기타 & "■"
a가 1일때 실행하면 아무것도 입력되어 있지 않은 fn기타의 값과 "■"를 연결하여 fn기타에 넣으므로, fn기타에는 "■"가 들어가 있습니다.
a가 2일때 실행하면 fn기타에 입력되어 있던 "■"에 "■"를 연결하여 fn기타에 저장하므로 "■■"가 됩니다.
a가 3일때 실행하면 fn기타에 입력되어 있던 "■■"에 "■"를 연결하여 fn기타에 저장하므로 "■■■"가 됩니다.
for 문의 변수를 a로 지정했으므로
Next a 로 마무리 하는 것입니다.
좋은 하루 보내세요. 새해에도 행복하세요.
-
관리자2019-02-06 16:14:06
안녕하세요.
1.
step 2 로 지정하시면 2씩 증가됩니다.
For a=1 to 10 step 2
Next a
이런 형식으로 사용됩니다.
2.
For a=1 to 10
으로 지정되었다면, 변하는 값을 저장하는 변수 a는 1 부터 10까지 증가되는 것입니다.
좋은 하루 보내세요.
-
*2019-02-05 15:55:25
안녕하세요? 답변달아주신내용 감사드립니다.
답변내용중에서 아직 이해가 덜 되는 부분이있어서요.
1.step 1이 생략된 경우라고 해서 증가값이 1이라 하셨는데,
만약 증가값이 2로 해주면 어떻게 표기하면 되나요?
(생략된 경우가 아닌 경우를 보고 싶습니다.
혹시나, 시험에서 증가값이 2로 나올수도 있다고 생각해서 입니다.)
2. For a = 1 To
여기서, 1 To 는 무슨 의미인가요?
함수사전을 찾아보아서 미리 이해를 하려고 했는데, 찾지 못하여 재 문의드립니다.
감사합니다.!