Microsoft Access 掲示板

レポートを開くプロシージャについて / 4

5 コメント
views
4
hatena 2025/01/30 (木) 11:00:30 修正

レポートの「開く時」イベントでは、デザインビューで設定できるプロパティのみ代入できます。
Valueプロパティには代入できません。

対策としては、ControlSourceプロパティに式として代入する。

Private Sub Report_Open(Cancel As Integer)
    Dim kikan As String
    kikan = Nz(Me.OpenArgs, "")
    Me.[text_kikan].ControlSource = "='" & kikan & "'"
End Sub

=や引用符を付加する必要があります。

「読み込み時」イベントならValueプロパティに代入できます。こちらのほうがシンプルですね。

Private Sub Report_Load()
    Dim kikan As String
    kikan = Nz(Me.OpenArgs, "")
    Me.[text_kikan].Value = kikan
End Sub

VBAを使わなくても、デザインビューでテキストボックスのコントロールソースでOpenArgsを参照することもできます。

=Nz([OpenArgs],"")

Report.OpenArgs プロパティ (Access) | Microsoft Learn

通報 ...