2017-11-20 12 views
-1

私はこのサイトの初めてのポスターですが、長時間のユーザーです。あなたはすべて、すごく多くのことで私を助けてくれました!私はこのサイトを検索して問題を解決しましたが、他のスレッドは見つかりませんでした。あなたが私を助けてくれることを願っています!私は初心者のAccess/VBユーザーです。/VBカスタムナビゲーションボタンへのアクセス - 次へ/前へ移動

私は、監督者が毎日製造ラインでシフトを入力するために使用するフォームを持っています。私のサブフォーム(クエリに基づく)は、入力されたすべてのシフトを日付で表示します(私は、日付を選択できる検索ボックスを持っています)。
自分のナビゲーションボタン(現在のところ、Go To First、Next、Lastのマクロでのみ実行されます)は、次の/前のレコードに移動するものですが、私のコードする方法があるかどうかは疑問ですボタンを押すと、現在の日付の次のレコードに移動するのではなく、次のレコードセットに移動します。

たとえば、私の日付検索ボックスで9/28/17を検索すると、そのサブフォーマにその日付の57個のレコードが設定されます。私の現在の次の&前のボタンは、その日付の各レコードに1つずつ移動してから、次の日付に移動します(もちろん、マクロがそれを指示しています)。私は次へを押して9/29/17にジャンプしたいと思っています。マクロでもこれが可能なのかどうかは不明ですが、多分VBコードではどうですか?

私はAccess 2010/VBを使用しています。私の単一のフォームは、単一のテーブルにデータを保存します。私のサブフォームはクエリから取得し、データシートビューで表示されます。 フォーム名 - ShiftRecord2。 サブフォーム - ShiftProdRecords2_Query_subform。 サブフォームは現在、ShiftDateによって生成されます。 メインフォームとサブフォームは、ShiftDateのマスター/チャイルドフィールドでリンクされています。

困ったことに私が最後に見なければならないものは何か分かりません。私は、すべてのヘルプ/ヒント/アドバイス/チュートリアル/リンクに感謝します!

追加する編集: 私のサブフォーム上の私の現在のフィルタフィールドは、次のようになります。

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

スタックオーバーフローへようこそ!既存のフィルタフィールドを持っている場合、それは名前とフィルタの提供してください。可能であれば、そのフィルタフィールドを増分または減分することができます。 –

+0

ありがとう!私はこのサイトが大好きです。とても役立っています!現在、私のサブフォームフィルタは次のようになります!![ShiftDate] [フォーム]&「*」のように[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 

前:

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

は私を助けるために時間を割いてそんなにあなたの両方をありがとう!私はこれらを朝に試してみるつもりです!あなたに感謝する!! – Summer044

関連する問題