2014-01-14 1 views
0

MainForm ("Main Menu")에있는 SubForm ("Main Menu SubForm")이 있습니다 ... SubForm에서 한 행을 선택하고 해당 행을 가져옵니다 편집을위한 다른 양식으로SubForm 행 선택 및 소스 편집

나는 다음과 같은 코드를 가지고 있지만 내가 기대하는 일을하지 않는 것 : 필요한 경우

Private Sub Form_Activate() 
    Me.Requery 
    If IsLoaded("Main Menu") Then 
     If Forms![Main Menu]![Main Menu SubForm].Form.RecordsetClone.RecordCount > 0 Then 
      DoCmd.GoToControl "txtWOrderID" 
      DoCmd.FindRecord Forms![Main Menu]![Main Menu SubForm].Form![WOrderID] 
     End If 
    End If 
End Sub 

내가 참조 내 데이터베이스에 링크를 첨부 : Access Invoice System

답변

0

나는 메인 F에서이 작업을 수행하여 작동하도록 점점 상처 orm :

Private Sub btnViewWorkOrder_Click() 
    DoCmd.OpenForm "Work Order", acNormal, , "[WOrderID] = '" & Forms![Main Menu]![txtWOrderID] & "'", acFormEdit, acDialog 
End Sub 
0

내가 할 것 같은 (그리고이 aircode, 그래서 그것을 조정이 필요) :

forms!WOrderID.RecordSource = "Select * from MyTable where WOrderID = " & me.txtWOrderID & "" 
Forms!wOrderID.Refresh 
+0

코드를 따르고 있는지 확실하지 않을 수 있습니다. 더 구체적으로 할 수 있습니까? 나는 이것을 다음과 같이 사용하고 있는가? forms! *** 작업 주문 ID *** .RecordSource = "*** 주 메뉴 하위 양식 ***에서 선택하십시오. 여기서 WOrderID ="& me.txtWOrderID & "" 양식! *** 작업 순서 ID ***. 새로 고침 –

+0

WOrderID가 정수 필드가 아닌 경우 변수를 작은 따옴표로 묶어야합니다. 그게 중요한지 확실하지 않습니다. 또한 필드/양식 이름에 공백이 있으면 대괄호로 묶어야합니다. RecordSource는 본질적으로 양식을 쿼리에 바인딩하기 때문에 쿼리와 똑같이 말해야합니다. –

+0

나는 분명히 여전히 뭔가 잘못하고있다. 내 데이터베이스를보고 내가 뭘 잘못하고 있는지 보아라. 이것은 내가 업데이트 한 것이며 여전히 작동하지 않습니다. 나는 잘못된 장소에 뭔가를 넣고 있다고 생각한다. 'Private Order Form_Activate() 양식! [작업 지시서] .RecordSource = "[작업 지시서] WHERE [WOrderID] = '"& Me.txtWOrderID & "'" 서식! [작업 지시]. 새로 고침 끝 Sub' –