OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

ADODCを使ったアクセスへの検索の仕方

  • すぐに回答を!
  • 質問No.146900
  • 閲覧数105
  • ありがとう数7
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 68% (11/16)

 こんにちは。いつもお世話になっています。早速ですが、今、VBを勉強中なのですが、
 ADODC(adoFind)を使って
 datagrid(dgdFind)に
 Microsoft Accessのデータを表示し、
 テキストボックス(txtFind)と
 コマンドボタン( cmdFind)を
 それぞれ一つずつ用意し、そのテキストボックスに入力したものをアクセスデータの中から検索して出したいと思っています。(つまりは検索ボタンを作りたいのです。)
 検索後のフォーカスは、アクセスのセル内で結構です。
 また、何か違うコントロールや、オブジェクトを使っても一向に構わないと思っています。
 ちなみにアクセスの表示の方法や、その他コントロールの作り方などはわかっています。ただ、上の検索ボタン(cmdFind)のコード(ここが一番重要なのに。)の書き方がわかりません。
 どなたか書き方のわかる方いらっしゃいましたら、どうか教えてください。お願いします。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全1件)

  • 回答No.1
レベル11

ベストアンサー率 70% (99/140)

ポイントはADODBとして呼び出したデータベースオブジェクトにSQL命令を与えて、結果データを得ることです。 そのためのメソッドが .Execute( )メソッドで、SQL命令の使い方を身につけなければなりません。 そして、取り出した結果データのことをコレクションとよび、fatch 命令で必要なフィールドを取り出す操作が必要です。 とりあえず、次のコードがプログラムと同じフォルダにおいたアクセスデータベ ...続きを読む
ポイントはADODBとして呼び出したデータベースオブジェクトにSQL命令を与えて、結果データを得ることです。
そのためのメソッドが .Execute( )メソッドで、SQL命令の使い方を身につけなければなりません。
そして、取り出した結果データのことをコレクションとよび、fatch 命令で必要なフィールドを取り出す操作が必要です。

とりあえず、次のコードがプログラムと同じフォルダにおいたアクセスデータベース(DBMei)を指定して、検索対象のフィールド名(TaisyouFeildMei)に探す文字(SagasuMoji)を含むレコードを抽出し、メッセージボックスに表示するプログラムです。
より細かい検索条件や指定したフィールド内容の取り出し方やデータグリッドへの埋め込み方は、仕組みが分かったら挑戦していくとよいでしょう。

Sub button1_click()
DBMei="操作対象アクセスデータベース名.mdb"
SiteiTableMei="操作対象テーブル名"
SagasuMoji="花言葉"
TaisyouFeildMei="検索対象フィールド名"
With CreateObject("Scripting.FileSystemObject")
DBPath = .GetFolder(".").path & "\" & DBMei
'msgbox DBPath
' 対象のアクセスデータベースへの接続
With CreateObject("ADODB.Connection")
.Provider = "Microsoft.Jet.OLEDB.4.0"
.Open DBPath
' SQL文の代入 次の行でデータベース操作命令文を作成する
SQL1 = "SELECT * FROM " & SiteiTableMei & " WHERE " & TaisyouFeildMei & " Like '*" & SagasuMoji & "*';"
MsgBox .Execute(SQL1).GetString(, , , vbLf)
If Err.Number<>0 Then MsgBox Err.Description,,"SQL実行時エラー"
.Close
End With
End Sub

また、下のサイトからダウンロードできる拙作のSQL実習キットがSQLの学習に役立つと思いますので、よかったら操作してみてください。そしてそのダウンロードコンテンツの中の、"アクセスデータベースSQL操作画面.hta"のプログラムコードを分析すると、アクセスデータベースの操作方法が理解できるはずです。示しておいたコードも、実はこのプログラムを編集したものです。


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ