レコード検索


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
vol111

これならわかるマイクロソフトアクセス活用法
            -->レコード検索
              
発行者:高内 章治 2010年5月25日
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┏ 今日の内容 ━━━━━━━━━━━━━━━━━━━━━━━━┓

┃【01 - ご挨拶    】
┃【02 - トピックス  】レコード検索

┃【03 - 編集後記    】

┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

─────────────────────────────────
【01 - ご挨拶    】          
─────────────────────────────────

こんにちは、高内(こうない)です。

今回は、

「レコード検索」

についてお話したいと思います。




─────────────────────────────────

【02 - トピックス】: レコード検索

─────────────────────────────────

フォームにテーブルやクエリを連結します。
単票形式で作成します。
1画面に、1つのデータ(レコード)が表示されます。


件数が少ないと、目的のレコードを探すのは簡単ですね。

でも、件数が多くなってくると大変です。

そのレコード検索のやり方です。

フォームにデータが連結されていると、便利なコマンドが使えます。

DoCmd.GoToRecord

です。


例えば、ボタンをクリックしたときに、レコードの10番目のデータを表示したい場合は、ボタンのクリック時に

DoCmd.GoToRecord , , acGoTo, 10

のVBAを書きます。
「10」が10番目のデータという意味です。

とても、便利です。

でも、件数が多くなると、目的のデータが何番目にあるのかわかりませんね。

そのデータがわかれば、簡単に目的のデータを
検索することができます。

それには、Bookmark というADOの方法を使います。

コードは次のようになります。
VBAに使うときは、こちらを使用してください。

---------------------------
Dim bmark As Variant
Dim Code1 as Variant

Set cn1 = CurrentProject.Connection
Set rst1 = New ADODB.Recordset
rst1.Open "クエリ名", cn1, adOpenStatic, adLockReadOnly

Dim strCriteria1 As String
Code1=テキストボックスのデータ

strCriteria1 = "クエリの検索するフィールド名 = '" & Code1 & "'"

rst1.Find strCriteria1
bmark = rst1.Bookmark
DoCmd.GoToRecord , , acGoTo, bmark


rst1.Close: Set rst1 = Nothing
cn1.Close: Set cn1 = Nothing
--------------------------

コードの内容を説明します。

--------------------------
Dim bmark As Variant
Dim Code1 as Variant

Set cn1 = CurrentProject.Connection
Set rst1 = New ADODB.Recordset

クエリーを開きます。
このクエリは、必ずフォームに連結しているクエリと同じにします。
rst1.Open "クエリ名", cn1, adOpenStatic, adLockReadOnly

Dim strCriteria1 As String

検索したいコードが入ったテキストボックスのデータをCode1に入れます。
Code1=テキストボックスのデータ

クエリの検索フィールドとテキストボックスのデータの同じデータを検索します。   
strCriteria1 = "クエリの検索するフィールド名 = '" & Code1 & "'"

実際に探します。  
rst1.Find strCriteria1

検索してレコードの番号をBookmark機能を使って探します。
データが見つかると、レコードの番号をbmarkに入れます。
bmark = rst1.Bookmark

bmarkのレコード番号へフォームに連結しているデータを移動します。
DoCmd.GoToRecord , , acGoTo, bmark

rst1.Close: Set rst1 = Nothing
cn1.Close: Set cn1 = Nothing

------------------------

簡単に、フォームに目的のデータを表示することができます。
とても便利です。

単票フォームでも、帳票フォームでも使えます。

やってみてください。

参考にしてください。



─────────────────────────────────
【03 - 編集後記    】       
─────────────────────────────────

宮崎県の口蹄疫(こうていえき)問題が毎日、ニュースになっています。

牛と豚への感染が広がっていますね。

ウィルスを防止するのに、殺すしかないのは、畜産農家の人にとってはやりきれませんね。

被害も最悪になっています。

早く、感染が止まればよいですが。


◆私がアクセスをマスターできたのは!!
http://www.sk-access.com/kyozai/zaiko1.html  

テーブル作成からVBAまでマスターできます。 
「在庫管理システムをアクセスで作ってみよう」教材です。
http://www.sk-access.com/kyozai/zaiko2.html  


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
●ご意見・ご感想・ご質問
 
『メルマガでもっとお役にたてる情報を配信したいと思いますので、日ごろから疑問に思っていることを教えてください。
宛先はこちらへです』

  •  kohnai★vega.ocn.ne.jp
      (高内:こうない:)
    (メールするときは、★を@に変えてください)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


◎「これならわかるマイクロソフトアクセス活用法」 のバックナンバー・配信停止はこちら

archive.mag2.com/0000222659/index.html

◎以下のホームページからでもバックナンバーを見ることができます。

http://www.sk-access.com/mailmaga/index.html

登録・解除につきましてはご自身でお願いいたします。

※このメールマガジンの転送はOKですが、掲載された記事の内容を許可無く転載することをを禁止させて頂きます。
必ず事前にご相談ください。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


1週間でアクセス(Access)のシステム開発ができる〜
「在庫管理システムをアクセスで作ってみよう」教材

「アクセスのプログラム/システムを短期間で開発したい方」、
「アクセスのフォーム/VBAを完全にマスターしたい方」のための
アクセス(Access)を使って1週間でシステム開発する究極の方法とは?

「アクセス(Access)のシステムを無料のSQL Server 2016 Expressへ
移行してみよう」教材

あなたの会社のアクセス(Access)のデータベースやシステムに不安を感じていませんか?
アクセスのデータ量が多くなり処理スピードが遅くなった。
アクセスのデータを共有したい。
セキュリティに不安がある。などと、感じている方は!!
(SQL Server 2016 Expressバージョンです。)


「アクセス(Access)プログラムの仕様書の作り方」教材
マイクロソフトアクセスを使用して、プログラムの作成/システム開発をおこないたい方の為に、
アクセス(Access)のプログラム開発に成功するために絶対に必要な「仕様書」とは?



[↑一番上へ]
[マイクロソフトアクセス活用法(メールマガジン)(ホームへ)]
11:432301

アクセス全体

VBA

SQL Server