DataEnvironmentで作成したアクセスのファイルが開いている時に
ファイルを閉じたいのですがうまくいきません
どうやればよろしいでしょうか
下のように作成しましたがif文のエラーになります
If Buturyu.rs受注データ商品.Open Then
Buturyu.rs受注データ商品.Close
End If
例えばその『rs受注データ商品』ってのが Recordset だとして、
『アクセスのファイルが開いている』という状態とは違うんじゃない?。
Recordset 閉じたらアクセスも閉じるんならいいけど、アクセスの
ファイルは開いていて Recordset だけ閉じた状態って無いのかな?。
あったら上のコードは全く意味が無いデスヨ。
…ってゆーか戻り値があるかどうか分からない Open メソッドを If 文で
使う時点ですごく強引…こんな事してたら壊れるよ?。メソッドは何かの『操作』を
行う関数。呼び出した時点で対象の『操作』が行われると思ってください。
上のコードは Open メソッドの戻り値があると仮定して rs受注データ商品 を
その『状態』がどうであろうと、問答無用でまず開いちゃいます。で、
戻り値が0以外の時に Close します。そーゆーコードです。強引でしょ?(^^;)
ファイルやオブジェクトの『状態』を知りたい時は『プロパティ』に
分類される値を見ると思ってください。Recordset オブジェクトに、現在の
オブジェクトの状態が接続中、実行中、またはフェッチ中のいずれであるかを
示させるには State プロパティを使います。
[VB6.0]
If Buturyu.rs受注データ商品.State = adStateOpen Then
Buturyu.rs受注データ商品.Close
End If
…でエラーは出ないと思うけど、ファイルが閉じるのかどうかは疑問…。
ツイート | ![]() |