アクセス 実行時エラー3265
お世話になっております。
先ほどまで、違うスレで質問していたものです。
おかげさまで、Private Sub scdSelect()のようなコードとなり、
こちらの方は無事動作しましたが、それをコピーして、
Private Sub denbanSelect()を作成すると、実行時エラー3265が
発生しました。
なぜエラーが発生するのか、検討もつきません。
何かほかに前提条件があるのでしょうか?
各サブフォームのイミディエイトウインドウで
?me.parent.openargs とすると、しっかりと引数は入っております。
教えて君で申し訳ありませんが、どなたご教授よろしくお願いします。
★呼び出し元フォーム
Private Sub cmdSeekDenban_Click()
DoCmd.OpenForm "resultJDenban", , , , , , Me.Name & ".resultViewJyutyuDenban"
End Sub
Private Sub cmdSeek_Click()
DoCmd.OpenForm "resultScd", , , , , , Me.Name & ".resultViewJyutyu"
End Sub
Public Sub resultViewJyutyu()
☆結果の表示(商品コード検索用)
end sub
Public Sub resultViewJyutyuDenban()
☆結果の表示(伝票番号検索用)
end sub
★検索画面 商品コード用 サブフォーム
Private Sub 商品コード_DblClick(Cancel As Integer)
Call scdSelect
End Sub
Private Sub scdSelect()
Dim Pos
Dim MyFrm
Dim ProcName
Pos = InStr(Me.Parent.OpenArgs, ".")
Set MyFrm = Forms(Left(Me.Parent.OpenArgs, Pos - 1))
ProcName = Right(Me.Parent.OpenArgs, Len(Me.Parent.OpenArgs) - Pos)
MyFrm.txtScd.Value = 商品コード.Value
MyFrm.txtEdaban.Value = 枝番.Value
DoCmd.Close acForm, "resultScd", acSaveNo
CallByName MyFrm, ProcName, VbMethod
End Sub
★検索画面 受注伝票番号用 サブフォーム
Private Sub 商品CD_DblClick(Cancel As Integer)
Call denbanSelect
End Sub
Private Sub denbanSelect()
Dim Pos
Dim MyFrm
Dim ProcName
Pos = InStr(Me.Parent.OpenArgs, ".")
Set MyFrm = Forms(Left(Me.Parent.OpenArgs, Pos - 1))
ProcName = Right(Me.Parent.OpenArgs, Len(Me.Parent.OpenArgs) - Pos)
MyFrm.txtDenban.Value = 伝票番号.Value
CallByName MyFrm, ProcName, VbMethod ←エラー発生★★★
DoCmd.Close acForm, "resultJDenban", acSaveNo
End Sub
エラー内容
実行時エラー '3265'
アプリケーション定義またはオブジェクト定義エラーです。
補足
ありがとうございます。 切り分けようと簡単なサンプル(シンプル)データを作ってやってみているんですが、その場合は出ないんです。 メインの方は表示だけさせておいて、サブのデータを変更にいくのですが、同じデータセットに入っているために それぞれがupdateコマンドの対象になっているのですね。 コードを見る限り、メインの方のアップデートが終わってからサブの方にいっていると思っていましたが、違っている? メイン、サブ、またメインサブといっているのでしょうか? とするとどの項目でエラーになるのかを捕まえなければなりませんが、データセットからどういう風にデータが書き込まれるのでしょうか? それをtry~catch文で捕捉する場合、どういう風に記述すればいいのでしょうか? できれば一件一件どこかに表示させてやるとわかりやすいと思うのですが、さてその方法が・・・・。 引き続きよろしくお願いします。