ADO レコードセットを使用して、既存のテーブルに基づいて新しいテーブルを作成したいと考えています。次に、新しいテーブルをフォームのレコード ソースとして設定したいと考えています。クエリを作成し、そのクエリをフォームのレコード ソースとして設定できることはわかっていますが、この方法は使いたくないですか?フォームのロード時にのみフォームのレコード ソースが存在するようにします。これが私が行ったことですが、フォームのレコード ソースを自分のレコードセットに設定することはできません。
Private Sub Form_Load()
Dim cnn As ADODB.Connection
Set cnn = CurrentProject.Connection
Dim rst As New ADODB.Recordset
rst.ActiveConnection = cnn
Dim mySql As String
'create tblfrmQryOnHold based on tblOnHold
mySql = "SELECT tblDisposition.ID, tblDisposition.DateRecorded, tblDisposition.OrderNo, tblDisposition.ArticleNo, "
mySql = mySql & "tblDisposition.Description, tblDisposition.Process, tblDisposition.Defects, tblDisposition.RefNo, "
mySql = mySql & "tblDisposition.PostedBy, tblDisposition.Status, tblDisposition.Attachment, tblDisposition.Engineer, "
mySql = mySql & "tblDisposition.Remarks, tblDisposition.ReviewClose, tblDisposition.ScrapNo, tblDisposition.HoldbackNo, "
mySql = mySql & "tblDisposition.ProductionRemarks, tblDisposition.HoldbackQuantity, tblDisposition.HoldbackNum INTO "
mySql = mySql & "frmQryOnHold FROM tblDisposition;"
rst.Open mySql
'set form frmOnHold record source to form frmQryOnHold
Forms![frmOnHold].RecordSource = frmQryOnHold
End Sub
「オブジェクトが閉じている場合、操作は許可されていません」というエラーが表示されます。このエラーが参照しているオブジェクトはどれですか?