2012-07-17 2 views
0

하나의 콤보 상자와 확인 버튼이있는 양식이 있습니다. 콤보 상자의 값을 선택하고 "확인"을 클릭하면 선택한 값을 기반으로 쿼리가 열립니다.ms 단추에서 쿼리를 실행하면 액세스 폼이 닫습니다.

괜찮습니다. 그러나 양식을 닫은 다음 쿼리를 엽니 다. 다른 값을 선택하고 쿼리를 실행하려면 양식 탭을 다시 클릭해야합니다.

양식 창을 여는 동안 다른 창에서 쿼리를 실행할 수 있습니까? 내가 하나 개 더 질문이

Private Sub Submit_Click() 
    Dim db As DAO.Database 
    Dim qdf As DAO.QueryDef 
    Dim strSQL As String 
    Set db = CurrentDb 
    Set qdf = db.QueryDefs("query") 
    strSQL = "SELECT columndate," & _ 
     "sum(qty1)," & _ 
     "sum(qty2)," & _ 
     "sum(qty3)," & _ 
     "sum(qy4)" & _ 
     "FROM table1 " & _ 
     "WHERE table1.column_date = '" & Me.datefield.value & "' " & _ 
     "group by table1.[columndate];" 

    qdf.sql = strSQL 
    DoCmd.Restore 
    DoCmd.OpenQuery ("query") 
    DoCmd.Close acForm, "Me.Form3" 

    Set qdf = Nothing 
    Set db = Nothing 

    Debug.Print strSQL 
End Sub 

: 콤보 상자

는 내가 아래와 같은 코드가 OK 버튼

select distinct format(columndate, 'mm-dd-yyyy') from table1 

, 같은 행 소스 코드를 이에. 실제로 날짜 필드는 "dd-mm-yyyy"형식이지만 표의 첫 번째 쿼리와 같이 행 원본에서 "mm-dd-yyyy"형식으로 변경하면 쿼리 결과에 공백 결과가 표시됩니다

+1

코드를 게시 하시겠습니까? – LittleBobbyTables

답변

0

귀하의 OK 버튼 클릭 핸들러는이

Private Sub btnOk_Click() 
    DoCmd.OpenQuery(Me!cboQuery, acViewNormal, acReadOnly) 
End Sub 
또한

하여 버튼의 Cancel 속성이 No로 설정되어 있는지 확인과 같이해야합니다.

+0

원래 질문으로 업데이트 했는데도 acViewNormal을 시도했지만 버튼을 클릭하면 닫히는 폼이 닫힙니다 (폼 창이 닫히고 쿼리 창이 나타남을 의미 함) ... 그러나 열려있는 폼 창을 유지하고 싶습니다 ... 쿼리 창이 열리도록합니다. 그 오른쪽에있는 작은 창 – user1449596

+0

방금 ​​확인한 - 속성 취소가 이미 설정되었습니다 ... – user1449596

+0

이 코드는 기본 폼을 닫지 않습니다. 쿼리 창 크기가 커지거나 양식이 최대화되면 대부분 숨 깁니다. 이 경우 쿼리를 열기 전에'DoCmd.Restore'를 호출하십시오. 그러면 창이 최대화되지 않습니다. –

관련 문제