Access 2K7 データベースでもう少し一般的なものを作ろうとしています。OpenArgs を使用して情報を渡すフォームがあります。フォーム名、サブフォーム名、フィールド名を渡しているので、フィールドに入力できます。
フィールドへの参照を「再構築」する際に問題が発生しています。私は次のことを試しましたが、VBAはそれを好きではありません:
Dim strForm, strField, strSubForm As String
Dim frm As Form
strForm = Left(Me.OpenArgs, InStr(Me.OpenArgs, "|") - 1)
Brk1 = Mid(Me.OpenArgs, InStr(Me.OpenArgs, "|") + 1)
strField = Left(Brk1, InStr(Brk1, "|") - 1)
strSubForm = Mid(Brk1, InStr(Brk1, "|") + 1)
X = "Forms!" & strForm
Y = X & "!" & strSubForm
Z = Y & "!" & strField
frm(Z) = Me.Calendar0.Value
この演習の目的は、カレンダーの値 (Me.Calendar0.Value) をサブフォーム (Forms!strForm!strSubForm!strField) のフィールドに渡すことです。VBAが受け入れる方法でそれを書く方法がわかりません。「オブジェクト変数または With ブロック変数が設定されていません」というエラーが表示されます。