1

レポートを含む Access 2010 データベースがあります。レポートは、フォームから 2 つの値を取得して結果をフィルタリングします。レポートはメインレポートとサブレポートで構成されています。

ただし、メイン レポートがレコードを返さない場合、実際にはレコードが含まれていてもサブレポートが表示されないという問題があります。サブレポートが正しい入力変数を取得していることを確認できるように、入力変数の内容をサブレポートに配置しました。残念ながら、メイン レポートが空白の場合は何も表示されませんか?

メインレポートが空の場合、常にサブレポートを表示する方法はありますか?

4

1 に答える 1

0

レポートがサブフォーム コントロールのリンクの子フィールドとマスター フィールドに依存している場合、リンク マスター フィールドをフィールドの名前ではなくコントロールの名前に設定することで、これを機能させることができます。たとえばAText、 control にバインドされたというフィールドATextがあり、サブフォームにはリンクの子フィールドとマスター フィールドがあるとします。

  Link Master Fields: AText
  Link Child Fields:  AText

これは、ウィザードを使用して作成されたフォームでは正常です。改ざんを開始します。コントロールの名前AtexttxtAtextに変更し、リンク マスター フィールドを変更します。

  Link Master Fields: txtAText
  Link Child Fields:  AText

少しコードを追加します。

Private Sub Report_NoData(Cancel As Integer)
    Me.txtAText.ControlSource = "=""abc"""
End Sub

値「abc」は、サブフォームのレコード ソースで発生する値であるため、サブフォームにはすべての「abc」レコードが入力されます。明らかに、特定のデータに合わせて上記を変更する必要があります。

于 2013-01-12T19:07:52.167 に答える