VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 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で、ステップ実行するとエラーが
発生しません。

変数名の定義は一部省略しています。
質問の内容が伝わりましたら、よろしくお願いいたします。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -