• ベストアンサー

アクセスのマクロ機能を使った検索について質問です。

 200件のデータがありまして、ある条件に合致したデータのみを連票形式で表示したいのですが、上手くいきません。ご教授願います。  例えば、名前で検索する時に「鈴木一郎」で検索すると該当データは1件ですので単票形式で表示させても問題無いわけですが、「鈴木*」とワイルドカードを使って検索した場合には該当データが5件とかあるわけです。この場合に、該当する5件を連票形式で単一のビューで表示したいのですが、いきづまってます。どなたか教えてください。お願いします。  マクロを実行させるボタンは単票形式のフォーム上に貼り付けてあります。

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

  • ベストアンサー
回答No.1

はじめまして。  表示させたい項目はフォームでしょうか?レポートでしょうか?  フォームでの組み方ならSQL(クエリ)との組み合わせがよいでしょう。 あとでレポートの表示にも役立ちます。 ▼こんなデータ例で説明します。 ----------------------------------------------  ○テーブル名  [名前データ]  ○フィールド名 [コード] [名前] ---------------------------------------------- コード データ 001   山田 一郎 002   鈴木 太郎 003   佐藤 花子 004   鈴木 良子 005   坂本 久太郎 : : ▼用意するもの  1)名前データのデータシート型フォーム [FORM02]  2)上記をサブフォームとして表示させる単票フォーム[FORM01] ▼名前データのデータシート型フォーム[FORM02]の作成  1.普通にデータシート型のフォームを作ります。  2.レコードソースを書き換えます。 ---例----------------------------------------------------------- SELECT 名前データ.コード AS コード, 名前データ.名前 AS 名前 FROM 名前データ WHERE ((名前データ.名前) Like IIf(IsNull([Forms]![FORM01]![名前]),"*","*" & [Forms]![FORM01]![名前] & "*")); #Like IIf(~が重要! ▼単票フォーム[FORM01]の作成  1.先に作った[FORM02]をサブフォームとして埋め込みます。   名前を[SubForm]としてつけておきます。  3.検索用フィールドのテキストボックスを非連結で作って   おきます。このとき、名前は「名前」としてください。  4.「名前」の更新後処理に、以下プロシージャを組み込みます。 ------------------------------------- Private Sub 名前_AfterUpdate() DoCmd.Requery "SubForm" End Sub -------------------------------------  これでFORM01を開いた時は全登録データが表示され、名前フィールド になにか検索文字列が入り、更新されたタイミングで、SubForm に該当 分のみが表示される仕組みのできあがりです。  これを応用すれば、レポートも同様に検索分のみを表示させることが できますよね。(フォーム内にレポートをオープンするコマンドボタン をつくっておき、オープンするレポートのレコードソースを、検索ソー スと同様にする) がんばってください。

hirokun925
質問者

補足

回答ありがとうございます。がんばって、やってみます。

その他の回答 (1)

  • misaki02
  • ベストアンサー率66% (4/6)
回答No.2

例ですが 単独テーブルのデータ表示を 条件検索しない状態で 1件ずつ表示していくことはできますか。 これができるなら いったん検索結果を仮テーブルに出力してから 作業を行って 終了時にデータを戻してはどうでしょうか。 全くのシロウトなのでおかしなことを 書いてますが できると思います。

hirokun925
質問者

補足

回答ありがとうございます。1件づつの表示は可能です。 「いったん検索結果を仮テーブルに出力してから」のところがミソでしょうか?

関連するQ&A

  • アクセス検索フォームからの検索方法と結果の一覧表示

    アクセスで単票形式のフォームにて条件を入力し検索を実行し、対象一覧を表形式のフォームで表示したいです。 「対象者データ」というテーブルに対し複数条件を入力 ■テーブル構成 (名前)(年齢)  山田  20  佐藤  25  鈴木  35  田中  35    小川  40 --------------------例その1 ■検索※単票形式 (名前)(年齢) 「田 」「  」 ■結果※表形式 (名前)(年齢)  山田  20  田中  35 --------------------例その2 ■検索※単票形式 (名前)(年齢) 「田 」「35 」 ■結果※表形式 (名前)(年齢)  田中  35 上記の様な結果を表示するにはどのように行えばよいのでしょうか。 アクセス初心者で、現在VBAを駆使し登録画面が完成した状態です。 よろしくお願い致します。

  • 人名や会社名の検索方法を教えて下さい

    初歩的な事かも知れませんが、人名や会社名の検索方法がよく分かりません。 たとえば、鈴木一郎という人を調べたい場合、MSNやヤフーのポータルサイトから「鈴木一郎」と入力して検索すると、「鈴木よしお」と「中野一郎」の両方を含むページを何万件と表示してしまい、「鈴木」という名前と「一郎」という名前の両方を含んでいるページ全てが検索されてしまいます。 自分として必要なのは「鈴木一郎」についての情報だけなので、これ以外の名前を検索してこないようにするには、どうすれば良いのでしょうか?

  • ACCESS フォームでの、データシートビューで表示できない

    ACCESS フォームで、 データシートビューで表示させたいのですが、 コマンドボタンから表示させる場合だと 単票形式の表示になってしまいます。 そのフォームを単独で起動させた場合は、指定通りに表示できるのですが・・・ プロパティの「規定のビュー」の項目は「データシート」と入力しております。 どうかご教授願います。

  • アクセス2007

    アクセス2007 アクセスで日付や内容を打ち込むと検索結果が出ると言うものを作りました。 検索結果はフォームで表示されてそこにトグルボタンを作りました。 このトグルボタンをクリックすると単票形式で詳細が出るようにするのはどうすればいいですか? 今のところ、クリックすると単票形式のフォームは出ますがデータが反映されていないようです。 よろしくお願いします。

  • Access データアクセスページについて

    Accessでデータアクセスページを作ろうとしています。 利用目的は、社内資産の管理なのですが、レコード数が1000件以上あるので、膨大なものです。 それで、単票形式でも表形式でもどちらのデータアクセスページでもデータを探すのが大変です。 なので、検索機能を作りたいのですが、どのようにすればいいのでしょうか? そして、検索した後、その資産を貸し出ししたりしたいので貸し出し管理をしたいのですが、それもどのようにすればいいでしょうか? 皆様教えてください。

  • アクセスのフォ-ムについて

    アクセスの単票形式のフォームでレコードの検索の フォ-ムはできるのですが 次を検索のフォ-ム がうまく 行きません ご指導願います。 それとレコ-ドの検索で 一度に該当項目が複数表示出来るのでしょうか?

  • Access2000のレコードの移動について

    Access2000を使用しています。 データが50件ほど有り、単票形式でフォームを作成しています。 そこで、その単票形式のフォームに非連結のテキストボックスを入れて、そのテキストボックスに「3」などの数字を入れると、3件目のフォームにジャンプが出来るようなものを作りたいのですが・・・よろしくお願い致します。 (VBはほとんどわかりません)

  • アクセスのフォーム単票形式の表示順番

    アクセスのフォームの単票形式で、表示順番をクエリの列名「順番」と同じに並び替えをしたいのですが、出来ません。 フォームのデザインビューの左上の■を右クリックしたプロパティで「データ」タブの「並び替え」で設定するのでしょうか?そこにクエリの列名が入力されていますが、票はその順番で表示されません。 クエリもテーブルも「順番」列の昇順で並び替えられています。 よろしくお願いいたします。

  • アクセス初心者ですが困っています。

    アクセスで名簿一覧を作成したいと思っています。 テーブルで1人につき50項目のデータを打ち込んでいます。 それをフォームの表形式で名前と識別番号を表示したいです。 (項目が多いので見やすくするため) フォームの表形式の左側にボタンを置き各詳細データを単票形式 で見れるようにしたいのですがうまくいきません。 現状として、ボタンを押して単票形式のデータを開くことは、でき たのですが表形式のボタンと単票形式のデータが連動しておらず、 ボタンを押すと一番最初の人物のデータしか出てきません。 どなたかアイデアのほうをご教授お願いします。

  • ACCESSで帳票形式のレポートを作りたい

    ACCESS2000で帳票形式のレポートを作成したいと思っています。 細かい設定をしたいのでウィザードからではなく、デザインビューから 作成したんですが、データが単票形式で出てしまい、1レコードで 1枚しか印刷されません。 帳票形式へ変換するにはどうすればよいのでしょうか?

専門家に質問してみよう