投稿日 | : 2004/12/07(Tue) 10:06 |
投稿者 | : おじん |
Eメール | : |
URL | : |
タイトル | : DBGrid(MDB)について(エラー発生) |
いつも、おせわになります。
次のようにやってエラーが発生し原因がわかりません。ご教授ください。
まず、MDBをDataに関連付けDBGridに展開します。
Data1.DatabaseName=DBfile'データベースファイル名
Data1.RecordSource="テーブル1"
(この状態であればエラーは発生しません)
任意のフィールド内容で抽出し、
Dim strSQL As String
Set db = OpenDatabase(DBfile)
Set ds = db.OpenRecordset("テーブル1", dbOpenDynaset)
strSQL = ""
If chkHattyusaki.Value = 1 Then
'発注先
strSQL = "hattyusaki like '" & _
Combo1.List(Combo1.ListIndex) & "*'"
ds.Filter = strSQL
Set ds = ds.OpenRecordset
End If
Set Data1.Recordset = ds
抽出されDBGridに表示されたデータについて、任意の行をクリックしたとき、
エラーが発生します。コードは下記。
まず、始めのクリックで、「データアクセスエラー」となり、OKを押し、
さらにクリックすると、「実行時エラー、CellValueメソッドは失敗しました」と
なります。以後、実行不可。
Private Sub DBGrid1_MouseDown( _
Button As Integer, Shift As Integer, X As Single, Y As Single)
'データを指定---->指定データを取得
Dim tmp$
With DBGrid1
row = .RowContaining(Y)
If row = -1 Then Exit Sub
txtSelect.Text = .Columns(1).CellValue(.RowBookmark(row))
End With
End Sub
さらに分からなくなるのは、_MouseDownで、ステップ実行するとエラーが
発生しません。
変数名の定義は一部省略しています。
質問の内容が伝わりましたら、よろしくお願いいたします。