0

いくつかの値を入力するフォームがあります(プロジェクト情報)

プロジェクト情報

これらのフィールドに入力された値は、ユーザーがボタンをクリックすると、VBA のいくつかの変数に保存されます。

Private Sub btnPItoKabels_Click()

    Dim Project As String
    Dim ProjectNummer As String
    Dim OpdrachtGever As String

    Project = ProjectInvoer.Value
    ProjectNummer = ProjectNrInvoer.Value
    OpdrachtGever = OpdrachtgeverInvoer.Value

    DoCmd.OpenForm "frmMain", acNormal, , , acFormAdd
    DoCmd.Close acForm, "frmProjectInvoer", acSaveNo

End Sub

今、私が持っているいくつかのレポートでこれらの値を取得したいと思います (それらはヘッダーに表示されます)

ヘッダ

これらは単なる通常のテキスト フィールドです。

3 つの文字列から値を取得してこれらのフィールドに入れるにはどうすればよいですか?

4

3 に答える 3

1

どの設定が最適かを判断するのは簡単ではありませんOK。問題のレポートを実行するようにボタンを修正することをお勧めします。

たとえば、レポートのデザインでは、プロジェクトヘッダー フィールドを次のように設定します。

=Forms!frmProjectInvoer!ProjectInvoer

これにより、レポートを開いたときにフォームに入力された値が参照されます。フィールド名の末尾に.Valueを追加する必要はないことに注意してください。

于 2013-06-19T10:56:58.283 に答える
1

フォームが閉じていない場合は、数式 "=Forms!MyFormName!Project" (または参照しているテキスト ボックス) を使用して簡単に参照できます。フォームを閉じる予定がある場合は、値を GLOBAL として指定しない限り実際には値を参照できませんが、それでも現在のサブが実行されている間だけ存続します。

于 2013-06-19T15:57:51.377 に答える
0

問題を解決するために次のことを行いました。

「OK」ボタンを押すと、フォームの値が新しいテーブル「tempProjectInfo」に入れられます

レポートをロードすると、テーブルから値が取得され、テーブルは削除されます。

于 2013-07-25T12:19:15.373 に答える