2017-11-20 10 views
-1

나는 처음으로 포스터이지만이 사이트를 오랫동안 사용하고 있습니다. 당신은 모두 너무 많은 것들로 엄청난 도움을주었습니다! 이 사이트에서 내 문제를 검색했지만 다른 스레드를 찾을 수 없습니다 - 나를 도울 수 있기를 바랍니다! 저는 초보자 인 Access/VB 사용자입니다./VB 사용자 지정 탐색 단추 - 다음/이전 날짜로 이동

본인은 감독자가 제조 라인별로 교대조를 입력하는 양식을 가지고 있습니다. 내 하위 양식 (검색어 기반)은 날짜별로 입력 된 모든 교대를 보여줍니다 (날짜를 선택할 수있는 검색 창이 있습니다).
내 탐색 버튼 (현재 Go To First, Next, Last에 대한 매크로에 의해 실행 됨)은 다음에/이전 레코드로 이동하는 것으로 가정되어있는 것을 수행하지만 내 코드를 코딩하는 방법이 있는지 궁금합니다. 버튼을 누르면 현재 날짜의 다음 레코드로 이동하는 대신 다음 레코드 세트로 이동합니다.

예를 들어, 내 날짜 검색 상자에서 9/28/17을 검색 할 때 내 하위 양식에 해당 날짜의 57 개 레코드가 채워집니다. My current Next & 이전 버튼은 다음 날짜로 이동하기 전에 해당 날짜의 각 레코드에서 하나씩 이동합니다 (물론 매크로가 수행 할 작업입니다). 나는 다음을 치고 9/29/17로 점프 할 수 있기를 바랍니다. 이것이 매크로라도 가능할 지 모르겠지만 VB 코드가있을 수 있습니까?

저는 Access 2010/VB를 사용하고 있습니다. 단일 양식으로 데이터를 단일 테이블에 저장합니다. 내 하위 폼이 쿼리에서 가져와 데이터 시트보기로 표시됩니다. 양식 이름 - ShiftRecord2. 하위 양식 - ShiftProdRecords2_Query_subform. 하위 양식은 현재 ShiftDate에 의해 채워집니다. 메인 양식과 하위 양식이 ShiftDate의 마스터/하위 필드를 통해 링크되어 있습니다.

도움을 받으려면 내 마지막에 무엇이 필요한지 잘 모르겠습니다. 나는 모든 도움말/팁/조언/자습서/링크에 감사드립니다!

편집 추가 : 내 하위 폼 나의 현재 필터 필드는 다음과 같습니다

다음 :

Me.txtSearchDate = DateAdd("d",1, Me.txtSearchDate,) 
Me.mySubformName.Requery 

이전 :

[ShiftDate] Like "*" & [Forms]![ShiftRecord2]![txtSearchDate] & "*" 
+0

스택 오버플로에 오신 것을 환영합니다! 기존 필터 입력란이있는 경우 이름과 필터를 입력하십시오. 아마도 필터 필드를 증가 또는 감소시킬 수 있습니다. –

+0

감사합니다! 나는이 사이트를 아주 좋아합니다. 현재, 내 하위 폼 필터는 다음과 같습니다 : [ShiftDate] "*"& [Forms]! [ShiftRecord2]! [txtSearchDate] & "*" – Summer044

답변

0

저는 메인 양식과 하위 양식이 연결된 마스터/하위 필드 ShiftDate를 가지고 있습니다.

그리고 내 하위 폼

나의 현재 필터 필드는 다음과 같습니다

[ShiftDate] Like "*" & [Forms]![ShiftRecord2]![txtSearchDate] & "*" 

그렇다면, 필터를 제거하고 버튼에 에릭의 아이디어를 사용, 양식을 필터링하십시오.

Me!txtSearchDate.Value = DateAdd("d", -1, Me!txtSearchDate.Value) 
Me.Filter = "ShiftDate = #" & Format(Me!txtSearchDate.Value, "yyyy\/mm\/dd") & "#" 
Me.FilterOn = True 

과는 :

Me!txtSearchDate.Value = DateAdd("d", 1, Me!txtSearchDate.Value) 
Me.Filter = "ShiftDate = #" & Format(Me!txtSearchDate.Value, "yyyy\/mm\/dd") & "#" 
Me.FilterOn = True 

없음 다시 쿼리가 필요하지 않습니다. 마스터/하위 링크는 자동으로 하위 폼을 다시 쿼리합니다.

+0

이것은 절대적으로 완벽합니다! 두 분 모두 고마워요! – Summer044

0

다음과 같은 시도 할 수 있습니다

Me.txtSearchDate = DateAdd("d", -1, Me.txtSearchDate) 
Me.mySubformName.Requery 
+0

도와 주셔서 감사합니다. 나는 이것을 아침에 시험해 볼 것이다! 고마워! – Summer044