私は従業員のためのcourcesを保持して表示するデータベースで作業しています。再び特定のコース。私はすべての情報を保持するいくつかのタブを作った。フォームに情報を表示することができます。このフォームには、さまざまなクエリ間で選択できるいくつかのボタンが含まれています。すべてのクエリは、同じ形式のデータを同じ形式で出力します。簡単な参照のために、私はこの書式をFormAと呼ぶことにする。VBA:Microsoft Accessの別のフォームのレコードソースを変更することを許可しません。
これはすべて正常に動作しますが、数時間前に特定のレコードの情報を更新できるボタンを追加しました。この更新は別の形式で行われ、FormBとなります。古い状況では、すべてのトレーニングに特定のフォームを使用しましたが、これはすべて不十分であると思いました。すべてのクエリの情報を表示できるフォームを作った。私が遭遇している問題は、ボタンを押して特定のレコードを更新するたびに発生するという事実です。クエリ/フォームに常に先頭のレコードの情報が表示されます。私は数時間今これに立ち往生していて、私はちょうどそれを働かせることができません。私が手動でFormBのRecordSourceを正しいクエリに設定した場合、それはすべて正常に動作します。しかし、これは私に多くの同じ形を作る必要があります。
私は関連性があると思われるすべてのコードをリンクしようとします。他に何かが必要な場合は、そう言いなさい。
フォームA上に置かれ、更新ボタンを使用するコード:
Private Sub btnUpdate_Click()
Dim stDocName As String
If Forms!FormA.RecordSource = "QryFG" Then
stDocName = "FormB"
' we open first the form:
DoCmd.OpenForm stDocName, , , "peoplesoftnr = " & Me!PeopleSoftNr
' we then set up it's RecordSource:
Forms!FormB.RecordSource = "QryFG"
End If
この文は、すべての異なるトレーニングの5回繰り返された場合、彼らはすべて同じであるので、私はそれらを含まれませんこの郵便受け。
コードは私のテキストボックスを私のFormBに記入します。しかし、それは常に最高のレコードを選ぶ。同じ列にないボタンを押しても(FormA)。私は次の行をコメントアウトする場合:
' Forms!FormB.RecordSource = "QryFG":
、手動ではFormBのレコードとしてQryFGを設定し、それは、その行うことになって何を行います。しかし、これを行うことで、私は同じ形式のたくさんを作成する必要があります。私はこれを行うより良い方法があることを願っています。あなたの時間とeffordに事前に感謝します。私の母国語は英語ではないので、スペルミスや文法ミスを無視してください。
もう一度おねがいします!
Joeri Rommers
両方のソリューションが優れています!ありがとう、あなたは私を救った! –