2016-08-09 11 views
1

私は従業員のための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

答えて

0

フォームのレコードソースを設定することで、あなたは以前DoCmd.OpenFormに設定されたフィルタを上書きするので、最初から始まる、QryFGのすべてのレコードを示しています。

周囲にはさまざまな方法があります。

' Open without filter 
DoCmd.OpenForm stDocName 
' Limit recordsource to current record 
Forms!FormB.RecordSource = "SELECT * FROM QryFG WHERE peoplesoftnr = " & Me!PeopleSoftNr 

またはレコードを変更した後、フィルタを設定します。

DoCmd.OpenForm stDocName 
With Forms(stDocName) 
    .RecordSource = "QryFG" 
    .Filter = "peoplesoftnr = " & Me!PeopleSoftNr 
    .FilterOn = True 
End With 

をあなたはWindowMode:=acHiddenでそれを開き、レコード/フィルターを変更した後.Visible = Trueにそれを設定することができることをやっている間、フォームは「点滅」した場合。

+0

両方のソリューションが優れています!ありがとう、あなたは私を救った! –

関連する問題