나눔터  
  HOME > 나눔터 > 묻고답하기 > 액세스
액세스
액세스에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 조병민 (boodha1)

추천:  1
파일:     조회:  3702
제목:   컨트롤박스간 이동 이벤트
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 액세스 버전(95,97,2000,xp,2003,2007):

* 아래줄에 질문을 작성하세요 >> 

안녕하세요. 

폼에서 컨트롤박스간 이동 이벤트를 만드는데요. 
수정 보완 부탁드립니다. 

희망하는 조건 및 실행 내용
현재 탭이 컨트롤박스"aa"에 있다면  컨트롤박스"bb"로 이동
반대로 "bb"에 있다면  컨트롤박스"aa"로 이동
"bb"간 탭포커스 이동 이벤트를 만들려고하는데요

Private Sub 확인_GotFocus()
If Me.OnGotFocus = "aa" Then
DoCmd.GoToControl "bb"
Else
DoCmd.GoToControl "aa"
End If

 
[불량 게시물 신고]  
황동준먼저 어디에 포커스가 있었는지를 알수 없기때문에,,전역변수를 만든후 거기에다 이전 포커스가 있던 값을 넣어 주거나, 폼안에 안보이는 텍스트 박스를 만들어서 거기다가 값을 넣어 준 다음 확인에 포커스가 왔을때 비교해보고 해당 개체로 포커스를 주면 됩니다.

'모듈
Option Compare Database

Public focusObj

*폼
Private Sub aa_LostFocus()
    focusObj = "aa"
End Sub

Private Sub bb_LostFocus()
    focusObj = "bb"
End Sub

Private Sub 확인_GotFocus()
    If focusObj = "aa" Then
        bb.SetFocus
    ElseIf focusObj = "bb" Then
        aa.SetFocus
    Else
    End If
End Sub

위 코드는 '확인'에는 절대 포커스가 멈추지 않습니다.
그리고 'aa' , 'bb' 컨트롤 외에 다른 컨트롤이 있는 경우(다른 컨트롤에서 확인란으로 오는 경우)는 수정보완이 필요합니다.
10-12 (13:12)
삭제 ■신고
조병민아.. 정말 매번 너무 감사드리고 많이 배웁니다. 
직접 찾아보고 알아보고 하면 좋을텐데.. 
정확한 해당 키워드도 개념이 부족해서 시간을 허비하는 경우가 많네요.  아무쪼록 매번 너무 감사드리고 있습니다.
10-13 (10:29)
삭제 ■신고
        
  

작성일 : 2016-10-12(12:10)
최종수정일 : 2016-10-12(12:10)