• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:住所録データ-ベースの処理について)

住所録データ-ベースの処理について

このQ&Aのポイント
  • VBを利用して住所録のデータベースを作成していますが、検索時にIDのテキストボックスに入力すると、名前、住所、電話番号を自動的に検索し、出力する方法が分かりません。
  • フォーカスアウトを利用して検索時に自動的に名前、住所、電話番号を出力する方法を探していますが、詳しい方の教えを求めています。
  • VBを初めて2ヶ月以上利用している初心者ですが、住所録データベースの検索処理に困っています。IDのテキストボックスに入力すると名前、住所、電話番号を検索して出力する方法を教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • clavia
  • ベストアンサー率50% (5/10)
回答No.1

仕様によって、使用するイベントは変わってきます。 ID を入力後、ID のテキストボックスがフォーカスを失った時(カーソルが消える瞬間)に検索をするなら、「LostFocus」イベントです。 ID を入力後、「検索」ボタンなどを押して検索するなら、「CommandButton」コントロールの「Click」イベントです。 ID を入力して、「1 → 検索、 13 → 検索、 138 → 検索」の様にそのつど検索をするなら、「Change」イベントです。 LostFocus なら、これでいかがでしょうか? Private Function TextID_LostFocus()   Dim SQL As String, RecResult As Variant   SQL = "SELECT NAME, ADDR, TEL FROM TABLE WHERE ID=" & TextID.Text   GetRecord(SQL, RecResult)   TextName.Text = RecResult(0) '名前   TextAddr.Text = RecResult(1) '住所   TextTEL.Text = RecResult(2) 'TEL End Function GetRecord 関数は SQL文を渡すと、RecResult 変数に結果を入れて返す関数としています。 また、コードには、全角スペースを入れていますので、コピーするときは、気をつけて下さい。

その他の回答 (1)

  • clavia
  • ベストアンサー率50% (5/10)
回答No.2

No.1 で回答したものです。 すみません、補足です。 コードの、「RecResult(n)」の部分は、 「CStr(RecResult(n))」の方がいいです。

jin0703
質問者

お礼

とても丁寧な回答を頂き、本当にありがとうございました。 当初はテキストボックスを用いたやり方を考えていたのですが、 もっと工夫して、色々なものを作ってみたいと思います。

関連するQ&A