• 締切済み
  • 暇なときにでも

accessサブフォームでのパラメータ

皆様いつも的確なアドバイスありがとうございます。 Access2002について質問させて下さい。 パラメータクエリを作りました。 そのクエリをサブフォームに埋め込み、ボタンを押すと、クエリが組み込まれたフォームが立ち上がるという仕組みを作りました。 クエリ単体で動かすときちんとパラメータが現れ、製造記号を入力すると、それに該当する製造番号の商品が現れます。パラメータは次のとおりです。 Like [製造番号検索] & "*" クエリでは不都合は無いのですが、 そのクエリをサブフォームに埋め込んだフォームを開こうとすると、同じパラメータが2度現れてしまいます。 サブフォームに関する特性があるのでしょうか? もしくは、パラメータの設定が悪いのでしょうか? 今はフィルタで無事動いているのですが、どうして出来ないのかが知りたいのです。 ご指南宜しくお願いします。 haru

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数1240
  • ありがとう数0

みんなの回答

  • 回答No.2

お疲れ様です サンプルを作成して自分でもやってみましたが、 問題なく動作しますね... (スイマセン、同じフォームは2つ開けないと思っていたのですが、開けますね...サブフォームとメインフォームだったら...) >ボタンを押すと、クエリが組み込まれたフォームが立ち上がるという仕組みを作りました。 多分、このところに問題があるのではないかと思われますが? ちなみに自分は(VBAで)下記のようにフォームを呼び出して実験しました。 *stFormName = "サブ" *Docmd.OpenForm stFormName 余談ですが、(今回の)やりたいことはVBAを使用すれば、もっとスマートにできそうです 参考になれば...

共感・感謝の気持ちを伝えよう!

質問者からの補足

how-do-you-doさま そうですかー。動きますかー。 今新しく作ってやってみましたが、フォームを直接ダブルクリックしても、別のフォームに貼り付けたボタンから「マクロ」で「フォームを開く」でもやはりだめなんです。ちなみに教えて頂いたコードを書いてみましたが、やはりパラメータが2度出ます。 環境はAccess2002 windowsxpです。 やりたいことは非常に単純に、パラメータをもっているクエリをサブフォームとして表示したいだけなのです。私のAccessがおかしいと思って、会社でやってもやはりだめなんです。 出来る出来ないよりは、なぜなんだろうにとらわれてしまって・・・。 忙しい中、気にかけてくださりありがとうございました。 haru

関連するQ&A

  • アクセスのパラメータクエリをフォームからレポートに表示するには

    どなたかわかる方、教えてください! アクセスで、サブフォームにパラメータクエリ設置し、パラメータに抽出条件を入れるとサブフォームに一覧が表示するように設定しました。 この、いったんサブフォームに抽出したものを今度はそのままレポートにしてプリントアウトしたいと思っています。 同じパラメータクエリをフォームに設定すると、もう一回パラメータを入れなければならなくなってしまいます。 すぐにフォームからレポート表示に切り替えてプリントアウトする方法はありますか? よろしくお願いします。

  • AccessサブフォームでのDoCmd.ApplyFilter

    DoCmd.ApplyFilterの使い方について。 単体では正常に動くフォームを、あらた作ったフォーム上にドラッグして(サブフォーム?)使おうとしています。 単体ではうまく動いていたDoCmd.ApplyFilter が、サブに入るとエラーになります。 対処法をご指南ください。 ちなみにメインフォームは空です。

  • Access サブフォームの埋め込みについて

    サブフォームは「月を入力」というパラメーターを設定したクエリを使って作成した レポートです。下記2点について、よろしくお願いします。 ●サブフォームのラベルが表示されない サブフォームを埋め込んだレポートを作成したのですが、 レポートビューに切り替えたとき、各コントロールのラベルが表示されません。 (デザインビューではページヘッダーに各ラベルが表示されているのですが・・・) プロパティーシートの「可視」は「はい」になっています。 ●レポートビューに切り替えたとき、[月を入力]というパラメーターが何度も表示される 画面をスクロールする度に表示されてしまいます・・・ Access初心者で、質問内容もわかりにくいかと思いますが、 どうぞよろしくお願いします。

  • 回答No.1
  • yoisho
  • ベストアンサー率64% (331/516)

もしかして、パラメータクエリがメインフォームのレコードソースにも設定されていませんか? そうだとすると、メインフォームが開く時とサブフォームが開く時の 2 回、パラメータ入力ダイアログボックスが表示されると思います。 (はずしてたらスミマセン)

共感・感謝の気持ちを伝えよう!

質問者からの補足

アドバイスありがとうございます。 残念ながら、フォームはただの操作パネルとしているのでレコードソースはありません。 開くというボタンを押さずに直接フォームを開いてもやはりパラメータが2度でます。サブフォームコントロールの特性なのかと考えたいところなのですが・・・ いずれにしても、気にかけていただきありがとうございます。 haru

関連するQ&A

  • ACCESS サブレポート パラメータにつき

    いつもお世話になっております 日付を指定するパラメータクエリをソースにレポートを作りました Aフィールド(例:仕入先)での小計を出し、同一の用紙の下部にBフィールド(例:商品名)での小計を出すようにしたのですが(同じクエリーを使用)、プレビューを見るときにパラメーターの入力(日付)を3度も要求されます。それを印刷しようとすると更に2度日付を入れなければならないように出来てしまいました ACCESS初心者です 何がいけないのか アドバイスお願いします

  • サブフォーム形式にすると選択クエリがうまくいきません

    アクセスで物件管理のメインフォームとサブフォームを作りました。 サブフォームの中で選択クエリを使い、地区を選択すると、その地区内の営業マンのみが選択できるコンボボックスを作ったのですが、 メインフォームの中に組み込んだ状態にするとパラメーターの入力を求められうまくいきません。 クエリの設定(営業コンボボックスで[Forms]![サブフォーム]![地区])が間違っているのでしょうか? 初歩的な質問ですがよろしくお願いします。

  • ACCESSで、メインフォームとサブフォームがあるとき・・・

    Accessで、メインフォームとサブフォームがあり、メ インフォームのテキストボックスで期間を指定し、再 クエリを行うマクロボタンでサブフォーム上に期間指 定したデータのみが表示されるようにしています。 また、Access起動時に開くフォームがあり、そのフォ ームに、先ほど上述したメインフォームが開くマクロ ボタンを作成したところ、パラメータの入力画面が出 てきてしまいました。 恐らく、サブフォームの抽出用のクエリに設定してあ るものだと思いますが、これが表示されないようにす ることは出来ないのでしょうか?

  • Access97でサブフォームのページ移動

    Access97のおはなしです。 サブフォームを表形式で埋め込んでいます。 検索フォームを作成しサブフォームの項目で検索します。 検索結果よりメインのフォームに切り替える際に、 サブフォームの検索目標のあるページに移動することはできないでしょうか? たとえばの例ですが、 メインフォームは会社情報、 サブフォームは取扱商品といった感じです。 クエリーのページ移動ではページ番号は数字ではないとだめで「Like [商品名]」といったページの移動なできないんですよね。 なにかいい方法はありますでしょうか? ちなみにAccessBASICは全然分かりません(泣)

  • access 絞込みフォーム

    初心者です、よろしくお願いします。 仕様環境 WinXP access2002 請求管理のフォームを作っているのですが、壁に当たっています。 メインとサブのフォームがあってメインは顧客情報を 乗せています。サブにその顧客の簡単な請求履歴をのせています。 更に詳しくみるために別に「請求明細フォーム」というものを設けています。 これは請求書の内訳がのっています。 さてサブフォームの話ですが、このようになっています↓(簡単に書いてます)        請求番号   「詳細ボタン」 A0001   「詳細ボタン」 A0002      「詳細ボタン」を押すことにより、該当する請求番号の請求明細フォームに 飛ぶようにしたいのですが、うまくいきません。 パラメータを使えばできたのですが、パラメータを使わず、 ボタンを押すと該当する請求明細フォームに飛びたいのです。 請求番号に該当する情報だけ載せた請求明細フォームに飛ぶにはどうすれば よいのでしょうか?ちなみに請求明細フォームはクエリを返しています。 誰かお知恵をおかしください!

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

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

  • AccessのフォームをExcelに出力

    いつもお世話になっております。 現在、Access2003でDBを作成中です。 "テーブル1"をパラメータクエリで抽出します。"クエリ1"。 そのクエリを基にフォームを作成しています。"フォーム1"。これは抽出して印刷したり、Excelに出力するために作成しました。レポートではなく、フォームにした理由は、コマンドボタン等を配置できることからです。 Excelに出力する際のVBAでつまづいてしまいました。 DoCmd.OutputTo acOutputForm, "フォーム1", acSpreadsheetTypeExcel9 これで問題なく出力できています。が、、、 Access2007の一部のPCでこれを実行するとエラーが出ます。 原因は"OutputTo"が含まれているとエラーになるようです。 ちなみにエラーは「現在出力しようとしているオブジェクトの形式は無効です。」 「2007 Office スイート Service Pack 2」こちらをインストールすると良いそうなのですが、だめでした。 WindowsXP、Office2007はこのVBAだとエラーになります。 WindowsVista、Office2007は正常に使えました。 PCの何か設定?と考えたりもしたのですが、はっきりとした原因がわからないのでは、他の人にDBを使っていただけないので、エラーにならないVBAでいきたいです。 もうひとつ、 mFileName = InputBox("ファイル名を入力してください。") DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "フォーム1", mFileName こちらのVBAはクエリの出力だとうまくいくのですが、フォームだとだめでした。 クエリから抽出して保存すれば良いのですが、理想はこの形です。 1.フォーム1を開くと「担当者を入力」とパラメータクエリが働き、抽出結果をフォーム1に表示される。 2.[出力]ボタンを押すと、ダイアログボックスが開いてファイル名を指定して保存する。または、ダイアログボックスが開かなくても名前を指定できれば良いです。最悪、指定できなくても良いですが、原因となる、"OutputTo"を避けたVBAでいきたい。 3.mFileName = InputBox("ファイル名を入力してください。") DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "クエリ1", mFileName これだと、1.でパラメータクエリで抽出結果をフォームに表示させて、2.で[出力]ボタンを押すと、また、パラメータクエリで抽出しなければならなくなるのでできれば避けたいです。 こちらの条件でご教授お願い致します。 また、WindowsXP、Office2007でエラーが出ましたので、これを解決する方法でも良いです。 よろしくお願い致します。

  • Access2000 フォーム/サブフォームについて

    質問させていただきます。 フォーム/サブフォーム形式で画面を作っています。サブフォームは帳票形式で、複数のレコードを表示しており、各行の左にコマンドボタンを用意し、それをクリックすると、更新クエリー、削除クエリーが動くようにしています。 しかし、更新、削除クエリーとも ”0件のレコード”で処理が正しく動作しません。 ちなみに、両クエリの抽出条件は・・・ [Forms]![メインフォーム]![サブフォーム]![商品コード] しかし、フォームを使わずクエリーから実行する(パラメータに条件を手入力する)と正しく動作します。 記述ミスがないか何度も見返したのですが・・・。 「サブフォームの目的の行の商品コードと一致するデータを処理する」としたいのですが・・・。

  • Access ADO パラメータークエリー

    Access ADOでフォームのコントロールを参照するパラメータークエリーを開こうとすると、どうしても「SQLステートメントが正しくありません・・・」のエラーが発生してしまいます。 もちろん、クエリー単体では正常に動作しますが、クエリーのパラメーターに参照するコントロールを登録してもADOでは開けません。 現在はパラメータークエリーの抽出結果を一時テーブルに書き込んで、これをADOで開くという非効率極まりない方法で凌いでいますが、どうすれば良いのでしょうか。

  • Accessのパラメータクエリについて

    Accessのパラメータクエリがうまく動かなくて困ってます。 実はODBC経由でリンクテーブルを作っておりまして、そこからパラメータクエリで抽出を試みたのですが、パラメータは聞いてきますが抽出できません。 選択クエリ状態で直接抽出条件を入れてやれば何の問題もなく通常のテーブルと同様に抽出できるのですが、パラメータクエリにする、または同じ事ですが他のフォームのコントロールを参照させる状態ですと、エラーも出ずにノンデータとなります。 これって何故なんでしょうか?対処方法はありますか? ちなみにリンク元のテーブルはオラクルですがデータ型とかが関係あるのでしょうか?