문제 4번에 2번에 2번
"'영업사원수당' 시트에서 셀의 데이터가 변경(Change)되면 해당 셀로 셀 포인터가 이동되고 글꼴 스타일이 '궁서체'로 설정되도록 이벤트 프로시저를 작성하시오."
앞 모의고사 중에 이런 변경셀에 포인터 이동 문제가 있었던 것 같아서
제가 프로시저 작성을 Target.SetFocus 라고 작성했거든요!
결과적으로 채점 프로그램 돌렸을 때 틀렸다는 말은 없었는데
채점 프로그램 돌리는 와중에
'438' 런타임 오류가 발생하였습니다: 개체가 이 속성 또는 메서드를 지원하지 않습니다.
라는 오류창이 떠서 디버그?라는 버튼 눌렀더니
제가 푼 엑셀에 비쥬얼베이직 창에 들어가져서
Target.SetFocus가 노락색칠해져있더라구요.
그래서 해설집 봤더니 답이 Target.Activate 라고 써있더라구요!
setfocus와 activate
둘이 차이가 있는것인가요?? SetFocus는 틀린건가요?? 왜 오류메세지가 뜨는걸까요???
Target.Activate 란 현재 작업하고 있는 워크시트에서 변화가 있는 셀을 활성화 합니다.
즉 해당 셀로 셀 포인터를 이동합니다.
해당 셀로 셀 포인터를 이동해야 한다면 사용해야 하는 부분입니다.
컨트롤명.setfocus에서 setfocus는 지정한 컨트롤로 포커스를 이동하는 메소드 입니다.
보통 엑세스에서 많이 사용합니다. 실행이 되지 않았다면 오답처리되므로 실행이 가능한 방법으로 작성하세요.
좋은 하루 되세요.
-
*2017-08-31 14:57:31
Target.Activate 란 현재 작업하고 있는 워크시트에서 변화가 있는 셀을 활성화 합니다.
즉 해당 셀로 셀 포인터를 이동합니다.
해당 셀로 셀 포인터를 이동해야 한다면 사용해야 하는 부분입니다.
컨트롤명.setfocus에서 setfocus는 지정한 컨트롤로 포커스를 이동하는 메소드 입니다.
보통 엑세스에서 많이 사용합니다. 실행이 되지 않았다면 오답처리되므로 실행이 가능한 방법으로 작성하세요.
좋은 하루 되세요.