책 내용 질문하기
이벤트 프로시저 msgbox 질문있어요!
도서
[2012] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2007 사용자용)
페이지
212
조회수
106
작성일
2012-02-20
작성자
첨부파일

처리기능구현에 3번문제 답을 보다가 궁금한게 있어서요ㅠㅠ

저는 혼자서 풀때

MsgBox "봉사부서관리 작업을 종료합니다", vbOKOnly
If vbOK = True Then
DoCmd.Close
End If

이렇게 풀었거든요.

vbok = true였나 어쨌든 이렇게 하는게 있었던것 같아서..ㅠㅠ

근데 메세지박스만 나오고 닫히질 않네요.. 1. 왜 이렇게하면 작동이 안되는건가요?

2. 그리고 답지에서 나온것처럼

msgbox.me.name & "작업을 종료합니다"

docmd.close 와는 차이점이 뭔가요?

답변
2012-02-21 09:22:25

msgbox 에서 선택된 내용이 무엇인지 알 수 없기 때문이죠.

msgbox에서 ok를 선택했는지 no를 선택했는지 if문에서 알수가 없어 그런것입니다.

그러므로

aa = MsgBox "봉사부서관리 작업을 종료합니다", vbOKOnly

와 같이 작성하신 후

if aa=vbok then

으로 쓰셔야 aa변수에 msgbox에서 선택한 내용이 입력되게 되고 이것을 이용하여 비교할 수 있게 되는 것입니다.

me.name 은 현재 폼의 이름을 표시 하는 것이죠.

그러므로 msgbox에 봉사부서관리 작업을 종료합니다.

라고 표시 할 수 있는 것입니다.

표시 하고 난 후 확인을 클릭 하면 닫히게 하기 위해

dcom.close를 사용한 것이죠.

어떤 방법으로 작성하시든 결과가 정확하다면 상관 없습니다.

하지만 문제에서 폼이름에 ' 작업을 종료합니다.' 문자열을 추가하라고 했으므로

msgbox.me.name & "작업을 종료합니다"

docmd.close

와 같이 사용하는 것이 맞겠죠.

좋은 하루 되세요.

"
  • *
    2012-02-21 09:22:25

    msgbox 에서 선택된 내용이 무엇인지 알 수 없기 때문이죠.

    msgbox에서 ok를 선택했는지 no를 선택했는지 if문에서 알수가 없어 그런것입니다.

    그러므로

    aa = MsgBox "봉사부서관리 작업을 종료합니다", vbOKOnly

    와 같이 작성하신 후

    if aa=vbok then

    으로 쓰셔야 aa변수에 msgbox에서 선택한 내용이 입력되게 되고 이것을 이용하여 비교할 수 있게 되는 것입니다.

    me.name 은 현재 폼의 이름을 표시 하는 것이죠.

    그러므로 msgbox에 봉사부서관리 작업을 종료합니다.

    라고 표시 할 수 있는 것입니다.

    표시 하고 난 후 확인을 클릭 하면 닫히게 하기 위해

    dcom.close를 사용한 것이죠.

    어떤 방법으로 작성하시든 결과가 정확하다면 상관 없습니다.

    하지만 문제에서 폼이름에 ' 작업을 종료합니다.' 문자열을 추가하라고 했으므로

    msgbox.me.name & "작업을 종료합니다"

    docmd.close

    와 같이 사용하는 것이 맞겠죠.

    좋은 하루 되세요.

    "
· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.