Accessパラメータの入力をフォームで入力する方法

このQ&Aのポイント
  • Accessにて躓いている方へ、処理番号と件名を入力する検索用フォームでパラメータの入力エラーを解消する方法をご紹介します。
  • Accessでデータをクエリで抽出し、処理番号と件名で絞り込んで表示する方法を解説します。
  • Accessのフォームとクエリを連携させて、処理番号と件名を入力して検索する機能を作成する手順をご紹介します。
回答を見る
  • ベストアンサー

Access パラメータの入力をフォームで入力

いつもお世話になっております。 Accessにて躓いています。宜しくお願い致します。 2万件以上のデータがあります。 データの中から、処理番号(ダブり無し)・年月日・件名の項目のみをクエリで取り出し、処理番号と件名でフォームで検索して表示するという事を行いたいと思います。 以下の手順で一連のものを作成したのですが、検索用フォームに検索したい文字を入れても「パラメータの入力」が出てきてしまい、検索用フォームがうまく働いていない状態です。 理想では「F処理検索」で絞り込みたい文字を各テキストボックスへ入力→検索ボタンをクリック→「処理」で絞り込んだデータを表示 としたいのです。 ~現状~ テーブル ・処理メインデータ(2万件のデータが保管されています) クエリ ・Q処理検索 テーブル「処理メインデータ」を基に左から「処理番号」「年月日」「件名」を充て、抽出条件として、「処理番号」と「件名」にそれぞれ 「Like"*"&[Forms]![F処理検索]![処理番号]&"*"」 「Like"*"&[Forms]![F処理検索]![件名]&"*"」 充てています。 フォーム ・処理(フォームビューで「処理番号・年月日・件名」の結果を出します) ・F処理検索(検索用フォームです。) 処理番号と件名を入力するテキストと、検索を実行する為のボタンを設置しました。 検索ボタンには、 プロパティ内クリック時の対応にマクロを下記の設定でセットしました。 アクション:フォームを開く フォーム名:処理 ビュー:フォームビュー フィル為:Q処理検索 Where条件式:空欄 データモード:空欄 以上、宜しくお願い致します。

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

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.2

私の手に負えるのかが最大のネックなのですが、 (MDBは試験用のものを使ってください) (1) 「F処理検索」を動かして、検索条件を入力後、直接クエリ「Q処理検索」を開いたらどのような表示になりますか。 OK でしょうか。NG でしょうか。 NGなら (2) 「F処理検索」のテキストボックス名を変更してみます。  処理番号 → txt処理番号 、 件名 → txt件名 これに伴い、クエリでの参照も変更します。 [Forms]![F処理検索]![処理番号] → [Forms]![F処理検索]![txt処理番号] [Forms]![F処理検索]![件名] → [Forms]![F処理検索]![txt件名] もう1度(1)をやってみます。 OKなら (3) 「F処理検索」を動かして、検索条件を入力後、直接「処理」フォームを起動したらどうなりますか。 で、結果はどうなりますか。

saiwai
質問者

お礼

引続きご回答誠にありがとうございます。 名前に問題があったようで、無事解決致しました。 次なる問題も浮上していますが、一先ずこの質問でやりたい事が出来たのでホッと致しました。 お付き合い頂きありがとうございました。

その他の回答 (1)

  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

フォーム「処理」のレコードソースに「Q処理検索」が設定されていれば、 マクロ内のフィルタ名は空欄でよいのでは。

saiwai
質問者

補足

回答ありがとうございます。 フォーム「処理」を作成した時に「Q処理検索」を基にしていたので、 マクロ内のフィルタ名を削除して、再度「F処理検索」フォームから文字を入力して検索ボタンをクリックしても、 「処理」フォームは立ち上がりますが、全データが表示されてしまう状態です。(検索機能が働いていない) 「F処理検索」を動かさずに、「処理」フォームだけを立ち上げると、パラメータの入力でちゃんと検索機能が動きます。 他にまだ足りない事があるんでしょうか…?

関連するQ&A

  • Access 日付/時間型を検索するには?

    いつもお世話になっております。 色々と調べたのですが、データが思い通りにならなく困っております。 検索用フォームを作成し、番号と件名であいまい検索出来るようにしたのですが、年月日でも検索出来るように依頼されました。 自分なりに組んでみたのですが、検索機能が動いてくれませんでした。 年月日のデータ形式は「日付/時刻型」で、格納されているデータは「yyyy/mm/dd 00:00:00」となっています。 日付のみで検索すれば良いのですが、いくら検索しても、全データが抽出されてしまいます。 どこが悪いのかご指摘お願い致します。 ☆クエリ☆ ・Q処理検索 左から「処理番号」「件名」「年月日」となっており、 「処理番号」と「件名」の抽出条件(1行目)には 「Like"*"&[Forms]![F処理検索]![処理番号]&"*"」 「Like"*"&[Forms]![F処理検索]![件名]&"*"」と記述 「年月日」の抽出条件に 「Between[Forms]![F処理検索]![開始]and[Forms]![F処理検索]![終了]」を2行目に記述 「>=[Forms]![F処理検索]![開始]」を3行目に記述してあります。 ☆フォーム☆ ・F処理検索 年月日は2つテキストボックスを用意しています。 各々に「開始」と「終了」の名前をつけ、定型入力を「0000/00/00\ 00:00:00;0;_」としてあります。 検索実行ボタンをクリックし、詳細検索表示フォームを表示します。 ・詳細検索表示 「F詳細検索」の結果をフォームビューで表示させます。 ☆マクロ☆ フォームを開く ・フォーム名:詳細検索表示 ・フィルタ名:Q処理検索 以上、宜しくお願い致します。

  • Access チェックボックスでチェックしたデータのみフォームで表示

    いつもお世話になっております。 またも躓いてしまいました。宜しくお願い致します。 フォーム上でチェックボックスにチェックが入ったデータを、違うフォームで詳細表示させる処理が出来ずにいます。 手順としては (1)検索用フォーム「処理検索」で、「処理番号」または「件名」テキストボックスに条件を入力し、検索実行ボタンで検索開始 (2)「詳細表示」フォームに、(1)で検索した結果が、フォームビューで表示。その際、フォームの形式は、フォームヘッダーに「詳細表示」ボタンと、各データの項目名が置いてあり、詳細にチェックボックス・処理番号・年月日・件名のテキストボックスが置いてあります。 ☆簡易図☆ [詳細表示]←ボタン  詳細表示      処理番号  年月日 件名 -------------------------- [チェックボックス]|[処理番号]|[年月日]|[件名] (3)データを詳細表示したいものにチェックボックスでチェックマークを入れ(運用上のルールで1つ以上は選ばない事になっています)、詳細表示ボタンをクリックすると、チェックを入れたデータのみ、さらに詳しい「処理票 詳細情報」フォームが立ち上がる 「詳細表示」フォームから「処理票 詳細情報」フォームへ展開するにあたり、「Q詳細表示検索」クエリを作成し、チェックボックスの判定をするようにすれば良いのかと思ったので、下記のように作ってみたのですが、うまく展開できませんでした。 今回利用したもの ☆テーブル☆ ・メインデータ(詳細なデータが入っている) ・詳細表示(チェックボックス及び、処理番号・年月日・件名が入っている。メインデータの処理番号とリレーション) ☆クエリ☆ ・Q詳細表示検索 (詳細表示テーブルから「チェックボックス」と、他の項目はメインデータテーブルから必要分入っています。) ☆フォーム☆ ・F処理検索(処理番号・件名をあいまい検索で検索できるようにしてある) ・詳細表示(F処理検索の結果が、チェックボックス・処理番号・発生日・件名の項目でデータを一覧表示する) ・処理票 詳細情報(もっと詳しい情報を表示・項目数だと30項目程表示しています) ☆マクロ☆ ・詳細表示 フォーム名:処理票 詳細情報 ビュー:フォームビュー フィルタ名:Q 詳細表示検索 以上、宜しくお願い致します。

  • ACCESS2003でクエリを使った検索フォームを作っています。

    ACCESS2003でクエリを使った検索フォームを作っています。 クエリは以下の様になっています。 ----------  番号   タイプ   品名  1111   AA     商品1  2222   AA     しょうひん2  3333   BB     商品しょうひん3 ---------- 品名のフィールドの抽出条件に ---------- Like "*" & [Forms]![品名検索フォーム]![品名検索] & "*" ---------- と入れています。 品名検索フォームは帳票タイプで、フォームヘッダーにテキストボックスを設け 「品名検索」と名前をつけています。 テキストボックスに【商品】と入力すれば番号1111と3333が、【しょうひん】と入力すれば 番号2222と3333が抽出されるように設定し、ここはうまく動きました。 ただ、このフォームを開いた際、テキストボックスは空欄になっているため、全レコードが 表示されてしまいます。テキストボックスが空欄の際は、何も表示したくないのですが どこを触ればいいのでしょうか? どうかよろしくお願いいたします。

  • Accessの検索フォームで。

    Accessを使ってデータベースを作成しています。 「テーブル1」があり、これには 名前ID 名前 入力日 チェック項目1 チェック項目2   : とあります。 これをもとに「検索クエリ」を作成しました。 検索クエリの項目は「テーブル1」とまったく同じですが、 すべてを検索するわけではないので ・名前ID  「検索項目なし」 ・名前  「Like IIf(IsNull([Forms]![検索条件入力フォーム]![名前]),[氏名],'*' & [Forms]![検索条件入力フォーム]![名前] & '*') ・入力日  「検索項目なし」 ・チェック項目1  「Like IIf(IsNull([Forms]![検索条件入力フォーム]![チェック項目1]),[チェック項目1],[Forms]![検索条件入力フォーム]![チェック項目1])」 ・チェック項目2  ※上記と同じ。   : としてあります。 この「検索クエリ」をもとに「検索条件入力フォーム」を作成してあります。 名前の欄に「田中」と入力すれば、「田中」がつく人がすべて検索されるというようなカンジになっています。 「テーブル1」に空欄があり、その場合に、検索がうまくいきません。 「検索クエリ」のところですべてに条件を入れればいいのですが、フォームに全てが入っていないので。。。 やはりフォームに「テーブル1」の項目すべてを含め、クエリで条件を入れるべきでしょうか? これが今考えている中では一番手早いようなカンジがするのですが、どうしてもあまりスマートなやり方ではないような気がして。。。 これしかないのであれば、これでやりますが、他にいい方法があれば、教えていただけないでしょうか? あまり上手な文章ではないので、補足要求があれば補足します。 宜しくお願いします。 Ac2000です。

  • フォームでパラメーターを求められます

    フォームにコンボボックスを作りました。 コンボボックス(年指定)の中は、 2005 2006 2007 ・・・・・・・・・・・ といったような年度の位置づけです。 さらにコマンドボタンを作ってクリック時にマクロを指定しました。 マクロには、 アクションが「クエリを開く」があり、 クエリは普通の選択クエリで、 実績年フィールドの抽出条件に、 =[Forms]![フォーム1]![年指定]としました。 これでコンボボックスで選んだ年度のデータが抽出されて表示されるのかと思っておるのですが、 コマンドボタンを押すと、 パラメーターの入力を聞いてきます。(Forms!フォーム1!年指定) どこが間違っているのでしょうか? 情報不足かもしれませんが、ご指導ください。

  • ACCESSでのクエリ抽出条件について

    ACCESS超初心者です。 自分なりに調べたのですが、知識不足によりお手上げ状態です。 クエリの抽出条件について、どなたかご教授いただけますでしょうか? OS:XP ACCESS:2000 ・フォーム上に自由に入力できるテキストを3つ用意します。 ・入力された3つのテキストが1つのフィールドに含まれるものをクエリで抽出したい。 ・3つのテキストが空欄の場合は全てのデータを抽出したい。 ■フォーム上のテキスト  テキスト1:テキスト10  テキスト2:テスト11  テキスト3:テスト12 ■テーブル  フィールド1:問合せ内容(1) ■クエリ内の抽出条件 Like "*" & [Forms]![F_検索テスト]![テキスト10] & "*" And Like "*" & [Forms]![F_検索テスト]![テスト11] & "*" And Like "*" & [Forms]![F_検索テスト]![テスト12] & "*" テキスト名がおかしいのですが、ご了承下さい。

  • Access97 テキストボックスを利用したあいまい検索フォーム

    Acces97にて下記のようなデータベースを使用しております。  テーブル:銀行コード一覧(銀行コード、銀行名、支店コード、支店名、支店住所)  クエリー:Q-銀行名検索、Q-支店名検索  フォーム:F-銀行名検索、F-支店名検索 今は検索したいフィールド毎にクエリーとフォームが作ってあり、同じようなクエリーとフォームが複数ある状態です。  <クエリー>   (1)Q-銀行名検索→フィールド「銀行名」に【Like "*" & [調べたい銀行名の一部入力] & "*"】設定   (2)Q-支店名検索→フィールド「支店名」に【Like "*" & [調べたい支店名の一部入力] & "*"】設定   ・・・以下同様のクエリー複数あり  <フォーム>   (1)F-銀行名検索にQ-銀行名検索を設定   (2)F-支店名検索にQ-支店名検索を設定   ・・・以下同様のフォーム複数あり 今回作りたいのは、1つのフォーム内に検索したいフィールド分の検索ボタンを作り、検索したい項目をテキストボックス内に入力後該当ボタンをクリックすることによって入力した項目を含むデータが抽出されるというフォームです。 例えば、"東京"と入力し「支店名」ボタンをクリックすると『東京営業部』『東京中央』等"東京"を含むデータが抽出される といった具合です。 部署内にAccess作成事例集なるものがあり、それを元に下記のように作成してみました。 フォーム名を「F-銀行コード一覧」・テキストボックス名を「検索」として、「支店名」ボタンのマクロに [Forms]![F-銀行コード一覧]![検索]=[銀行コード一覧]![支店名] というアクション(フィルタの実行→Where条件式)を設定。しかし、これでは『東京』のみしか抽出されませんでした。 Like関数を利用するのかと思い Like "*"&[Forms]![F-銀行コード一覧]![検索]&"*"=[銀行コード一覧]![支店名] としてみましたが設定できませんでした。 どのようなアクションを設定したらフォームでのあいまい検索ができるのでしょうか?

  • アクセスでフォームからサブフォームへの検索について

    アクセスを勉強中の初心者です。是非教えて下さい。 請求書入力フォームを作成したので、別のフォームで請求書一覧を作成しています。その請求書一覧は、サブフォームにデータシート形式で[請求No.]、[年]、[月][社名]、[金額]が一覧にでるようになっています。その元になっているクエリの条件のところに、[年]→Like [Forms]![請求一覧]![年検索] & "*" [月]→Like "*" & [Forms]![請求一覧]![月検索] & "*" [社名]→Like "*" & [Forms]![請求一覧]![社名検索] & "*" を入力しています。 ここからですが、サブフォームの上に[年検索][月検索][社名検索]のコンボボックスと[検索ボタン]があって、それぞれコンボボックスから選択後、ボタンを押したら、その対象の年や月、もしくは社名に沿ったデータがサブフォームに出るようにしたいのです。検索ボタンのクリックイベント後のところにどういう命令文を書けばいいのでしょうか。マクロの再クリエなどで設定してもどうにもなりません。マクロもVBAがまだ理解できていないので、教えていただければ幸いです。よろしくお願い致します。

  • Accessであいまい検索するフォームをつくってみたんですが?

    Accessの初心者です。 本などをみながらあいまい検索ができるようなフォームをつくってみましたがフォームを開いた時、全レコードが表示されてしまいます。 クエリーの抽出条件はLike "*" & Forms!フォーム1!テキスト0 & "*"にしてテキストボックスプロパティの更新後処理でDoCmd.Requeryとしました。(意味がよくわからないんですけど) フォームを開いた時やテキストボックスになにも入力されていない時、全レコードが表示されないようにするにはどうすればいいのでしょうか? よろしくお願いします。

  • 帳票から単票フォームへの表示がうまくいきません

    ACCESSを始めたばかりです。 帳票表示されているレコードを単票フォームで表示させたいです。 テーブル「売上データ」がありこのテーブルを使って帳票用と単票用のクエリを作成、それぞれに対してフォームを作っています。 「売上データ」には、オートナンバーで No があり、これを主キーにしてあります。 クエリ Q帳票   フォーム F帳票 クエリ Q単票   フォーム F単票 フォームF帳票には、レコード内にボタンをおきました。 ボタンには、下記のマクロをつくって イベント クリック時 のところにいれました。 マクロ フォームを開く  フォーム名 :F単票  ビュー   :フォームビュー  フィルタ名 :  Where条件式 :[No]=[Forms]![F帳票]![No]  データモード:  ウィンドウモード:ダイアログ フォームF帳票 で、検索窓を作って検索した一覧の中から単票表示したいレコードのボタンをクリックして単票フォームをダイアログで開かせたいです。 上記のようにやってみたのですが、単票フォームは開くもののデータは空白になってしまいます。 ちなみに、作ったマクロを実行してみると Forms!F帳票!No とパラメータの入力を求められるので適当な数字をいれるとその数字に該当した単票フォームが開きます。 WEBで探して同じような感じで作ってみたのですがうまくいきません。 どこが間違っているのでしょうか? ちなみにクエリ Q単票 の Noの抽出条件に[Forms]![F帳票]![No]をいれてみたりもしましたがうまくいきませんでした(空白で単票が開く) 何卒よろしくお願いします。

専門家に質問してみよう