1. 문제를 풀다보니 메시지 상자에 예/아니오를 표시하고
예를 클릭한 경우에만 폼을 종료하도록 하는 프로시저 문제가 있었는데요.
하나는
Dim aa
aa = Msgbox (Time & " 폼을 종료할까요?", vbYesNo + vbDefaultButton2, Me.Caption)
If aa = vbYes Then
DoCmd.Close
End if
다른 하나는
Dim aa
aa = Msgbox (Time & " 열려진 폼을 종료할까요?", vbYesNo + vbDefaultButton1, "")
If aa = vbYes Then
DoCmd.Close, , acSaveYes
End if
가 답이었습니다.
그런데 다른 건 이해가 되는데
Me.Caption 과 "" 부분이 차이나는 이유를 모르겠어요. 저 부분은 어떤 기능을 하는 건가요?
2. 두 번째 답의 문제에서는 '변경 내용을 자동 저장하지 않고 바로 폼을 종료'하라고 했습니다.
그 부분이
Dim aa
aa = Msgbox (Time & " 열려진 폼을 종료할까요?", vbYesNo + vbDefaultButton1, "")
If aa = vbYes Then
DoCmd.Close, , acSaveYes
End if
acSaveYes로 삽입된 것 같은데요.
해설에서는 '저장 여부를 묻지 않고 저장한 후 현재 개체를 닫는다'라고 되어있습니다.
그러면 결국 문제는 자동 저장을 하지 않는 것이고, 해설은 자동으로 저장하는 것이 아닌가요?
어떻게 이해해야 할지 설명 부탁드립니다!
항상 자세한 답변 감사히 읽고 있습니다 :)
1. 해당 부분은 메시지 박스 창의 제목 표시줄에 표시될 내용입니다.
"" 로 작성하면 아무것도 표시하지 않고 me.caption 을 사용하면 캡션에 표시된 값이 표시되는 것이죠.
2.
교재가 잘못되었네요. 저장하지 않고 폼을 종료하라고 했으니 docmd.close,,assaveno가 맞습니다.
공부하는데 혼동을 드려 죄송합니다. 앞으로 더욱 노력하여 이런 오류가 발생하지 않도록 최선을 다하겠습니다.
좋은 하루 되세요.
-
*2017-02-18 09:49:24
1. 해당 부분은 메시지 박스 창의 제목 표시줄에 표시될 내용입니다.
"" 로 작성하면 아무것도 표시하지 않고 me.caption 을 사용하면 캡션에 표시된 값이 표시되는 것이죠.
2.
교재가 잘못되었네요. 저장하지 않고 폼을 종료하라고 했으니 docmd.close,,assaveno가 맞습니다.
공부하는데 혼동을 드려 죄송합니다. 앞으로 더욱 노력하여 이런 오류가 발생하지 않도록 최선을 다하겠습니다.
좋은 하루 되세요.