
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
先の回答で事足りるかと思いますが・・・。
検索ボタンを配置した場合を補足しておきます。
Option Compare Database
Option Explicit
Private Sub コマンド_検索_Click()
Dim lngID As Long
Dim frmCustomers As Form
Dim rstCustomers As DAO.Recordset
lngID = InputBox("検索する[id]を入力して下さい")
If lngID > 0 Then
Set frmCustomers = Screen.ActiveForm
Set rstCustomers = frmCustomers.RecordsetClone
rstCustomers.FindFirst "id = " & lngID
If rstCustomers.NoMatch Then
MsgBox "該当する顧客情報が見つかりませんでした。"
Else
frmCustomers.Bookmark = rstCustomers.Bookmark
End If
rstCustomers.Close
Else
MsgBox "検索する[id]が入力されていません。"
End If
End Sub
このコードの実行画面は次の通りです。

No.2
- 回答日時:
>ちなみにデータは5万件
フォームに5万件を表示して検索するなんて非現実的かと・・・
>検索かけるフィールド名は“ID”
ちょっと意味不明です。
普通は、顧客テーブルは、顧客.[id]でも顧客.[名前]では検索しません。
検索は、顧客.[読み]が一般的です。
Q、このフォームの中に検索できるボタンを作りたい。
A、以下の手順で!
手順1、フォームを基にレコードセットを作成する。
手順2、レコードセットを検索する。
手順3、レコードセットのブックマークをフォームに反映する。
Option Compare Database
Option Explicit
Private Sub テキスト_参照するid_AfterUpdate()
Dim lngID As Long
Dim frmCustomers As Form
Dim rstCustomers As DAO.Recordset
lngID = Nz(Me.テキスト_参照するid, 0)
If lngID > 0 Then
Set frmCustomers = Screen.ActiveForm
' ----------------------------------------------------------
' フォームを基にレコードセットを作成
' ----------------------------------------------------------
Set rstCustomers = frmCustomers.RecordsetClone
' ----------------------------------------------------------
' レコードセットを検索
' ----------------------------------------------------------
rstCustomers.FindFirst "id = " & lngID
If rstCustomers.NoMatch Then
MsgBox "該当する顧客情報が見つかりませんでした。"
Else
frmCustomers.Bookmark = rstCustomers.Bookmark
MsgBox "該当する顧客情報が見つかりました。"
End If
rstCustomers.Close
End If
End Sub
次は、このコードを実行した画面です。
ブックマークは、id=8の顧客を指示しています。

No.1
- 回答日時:
新しい検索用のフォームを作成し、そこに現在のフォームをサブフォームとして配置します。
新しいフォームに検索文字列を入れる非連結テキストボックスと検索ボタンを作成し
検索用クエリのIDの抽出条件を検索用のテキストボックスとします。
作成した検索ボタンを押したときのイベントプロシージャにサブフォームのリクエリーを記載します。
例
Me.Refresh
Me![サブフォーム名].Requery
みたいな感じでいいかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
年月日を持つテーブルから年月...
-
Accessの検索フォームで。
-
access 検索フォームで検索が...
-
パススルークエリの動的パラメ...
-
Access レポート印刷するときに...
-
MA ACCESSデータベースに詳しい...
-
ACCESSのレポートで、指定した...
-
サブフォームに対してGoToRecor...
-
Accessレポートのチェックボッ...
-
アクセスでテキストボックスの...
-
ACCESS起動時に所定フォームを...
-
アクセスで数値型のフィールド...
-
Accessのレポートで再読み込み
-
ACCESS──メインフォームでサブ...
-
データベースのINT型項目にNULL...
-
アクセスでフォームビューがみ...
-
アクセスのレポート合成(複数...
-
レコードを保存するコード ア...
-
EXCEL VBAのユーザーフォームに...
-
Accessのフォームで、画面表示...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
年月日を持つテーブルから年月...
-
SQL*Loader
-
Accessのフォームで、空欄のレ...
-
access 検索フォームで検索が...
-
ACCESS2003 でクエリの抽出条件...
-
パススルークエリの動的パラメ...
-
複数条件検索について
-
VBAからクエリのパラメータを設...
-
ACCESSの検索について
-
ACCESSのフォーム上で複数検索...
-
アクセスのフォームにカンマ区...
-
アクセス マクロのメッセージ...
-
Access テキストボックスとlik...
-
Access2000で文字列中の半角ス...
-
複数のフォームの表示順を変え...
-
Accessでパラメータークエリの...
-
Accessの検索フォームで。
-
VBAユーザーフォーム内のテキス...
-
Access2007のサブフォームのReq...
-
AccessにてExcelファイル名にパ...
おすすめ情報