VB6.0を使用しておりまして、DataGrid に Access2000のデータのあるテーブル
を読み込んでいます。
DataGridは左端をCtrlキーを押しながら複数行を選択するところまではいいのですが、その複数行のデータを取得するにはどうしたらよいのでしょうか?
Dim Bmk As Variant 'ブックマーク用
For Each Bmk In DataGrid1.SelBookmarks
〜〜
Next
を使ってどうにかしようとしていますが、試行錯誤しています。詳しい方おられましたら御教授お願いします。
「DataGridに割り当てているRecordset」の「Clone メソッド」を使って、
カーソル処理用の Recordset を取得してください。
あとは、その Recordset の Filter プロパティまたは
Bookmark プロパティを使えば、対応するデータを得られるかと。
cloneというのは複製を作るというような意味ですよね。
Adodc.Recordset.Clone
A = Adodc.Recordset.clone.Filter
B = Adodc.Recordset.clone.Bookmark
と仮にやってみましたが、DataGridの内容(各フィールドのデータ)は得られませんでした。
そもそもなぜ複製を作成するのかという意味もよくわかりませんでした。
すみません。
全くやり方は違いましが、プロパティなどいろいろ試して、
For Each Bmk In DataGrid1.SelBookmarks
DataGrid1.Bookmark = Bmk
A = Adodc.Recordset.Fields(1)
B = Adodc.Recordset.Fields(2)
C = Adodc.Recordset.Fields(3)
Next
というやり方で実現できました。
ツイート | ![]() |