1

レポートのOnLoadでVBAを介してRecordSourceを取得するMicrosoftAccess2010のレポート内にグラフがあります。その理由は、ユーザーがレポートに含めるものを選択できるフォームがあるためです。したがって、VBAで設定されるクエリは

Me.Chart01.RowSource = "xxxx WHERE tbl_cars.ID In (" & IDs & ");"
Me.Chart01.Requery
DoCmd.Requery

問題は、グラフが更新されないことです。MsgBox Me.Chart01.RowSourceRowSourceを設定する前と後の両方を実行した後、SQLは正しいようです。In()部分を削除して、クエリデザインで試してみると、正しく機能します。

(同じ方法でレポートのRecordSourceをロードしますが、機能します。)

Accessのグラフは貧弱すぎてこれを実行できませんか、それともこの問題の解決策はありますか?

4

1 に答える 1

1

レポートはフォームのように更新されないため、グラフがバインドされていない場合は、レポートがFormatまたはPrintイベントのようにレンダリングされる前に発生するイベントに、行ソースを変更するコードを配置する必要があります。SQL文字列に含めるIDは数値であり、文字列ではないと想定しています。

于 2012-07-18T13:17:35.370 に答える