• ベストアンサー

アクセスのパラメータとは?

以前に同じようなテーブルを表示して、【newcode】の作り方を質問した物です。 ※データの型は共にテキスト型です 【code】  【国名】  111    日本  111    日本   111    中国  111    中国   121    アメリカ  121    アメリカ  123    日本  123    日本  123    中国 これにクエリの演算フィールドで【newcode: [code] & "_" & [国名]】と入力し、【newcode】という名のフィールドを追加しました。 【code】  【国名】    【newcode】  111    日本     111_日本  111    日本     111_日本  111    中国     111_中国  111    中国     111_中国  121    アメリカ   121_アメリカ  121    アメリカ   121_アメリカ  123    日本     123_日本  123    日本     123_日本  123    中国     123_中国 けれど、この【newcode】のフィールドはキーとしてしか使わないので、実際には表示させたくないと思い、デザインビューの表示のチェックをはずすと『パラメータを入力してください』というウィンドウが出てしまいます。 パラメータとはなんぞや????とも思いますし、表示させずにいる方法をご存知の方がいましたら、どうか教えて下さい。お願いします。 できれば、テーブル自体はいじりたくないのでクエリでやりたいと思いますので、お願いします。

  • rie78
  • お礼率87% (426/488)

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

  • ベストアンサー
  • chie65535
  • ベストアンサー率43% (8525/19377)
回答No.1

>デザインビューの表示のチェックをはずすと『パラメータを入力してください』というウィンドウが出てしまいます。 クエリの中に「何か訳の判らない単語」が出て来ると、アクセスは「パラメータを入力してください」と言うウィンドウを出します。 例えば Select code, 国名, [code]&"_"&[国名] as newcode From Table1 Where newcod = "111_日本" と言うクエリを書いたとします。 このクエリは、newcodeのeを付け忘れ、newcodになってますが、エラーにはならず「newcodは、何か訳が判らない単語なので、パラメータなのだろう」とアクセスが勝手に解釈し「newcodの値を入力して欲しいな~」と、勝手にウィンドウを出し、値の入力を強制してきます。 >実際には表示させたくないと思い、デザインビューの表示のチェックをはずす newcodeがキーなのであれば、newcodeで並び替えやグループ化をしている筈なので Select code, 国名, [code]&"_"&[国名] as newcode From Table1 Order By newcode Group By newcode のようなクエリになります。 ここで、デザインビューでnewcodeのフィールドの表示のチェックを解除すると、このクエリは Select code, 国名 From Table1 Order By newcode Group By newcode となります。 このクエリは「newcodeの定義が消えてしまっている」ので、エラーにはならず「newcodeは、何か訳が判らない単語なので、パラメータなのだろう」とアクセスが勝手に解釈し「newcodeの値を入力して欲しいな~」と、勝手にウィンドウを出し、値の入力を強制してきます。 >できれば、テーブル自体はいじりたくないのでクエリでやりたいと思いますので、お願いします。 こういう場合は「クエリからクエリを作る」しかありません。 まず「newcodeが表示されたままで、並び替えや抽出条件なども、すべて指定したクエリ」を作ります。 それを、例えば「クエリ1」と言う名前で保存します。 「クエリ1」が出来たら、更にクエリを新規作成し、元になるテーブルに「クエリ1」を指定し、演算フィールドに「codeと国名だけ」を追加します。 すると「newcodeがキーになってはいるが、newcodeが表示されないクエリ」が出来あがります。 これを「クエリ2」として保存し、この「クエリ2」を使えば、意図した結果が得られます。

rie78
質問者

お礼

長々と補足に質問を書いてしまい申し訳ありませんでした。 一応、ここで締め切らせていただき、新たに質問させていただくことにしました。 ありがとうございました。

rie78
質問者

補足

回答ありがとうございました。今は私も結局クエリを一度保存して、やっていますが、やはり一度ではムリなんですね・・・。 それでは、追記の質問になってしまうんですが、もしご存知でしたら教えていただけるとありがたいです。 このたび、 【code】  【国名】    【newcode】  111    日本     111_日本  111    日本     111_日本  111    中国     111_中国  111    中国     111_中国  121    アメリカ   121_アメリカ  121    アメリカ   121_アメリカ  123    日本     123_日本  123    日本     123_日本  123    中国     123_中国 という感じで、作ったんですがこの表にはまだもう一つの作業が残っているのです。それは、下記のように 【code】  【国名】   【A1】 【A1合計】  111    日本     10    30  111    日本     20      30  111    中国     25      40  111    中国     15      40  121    アメリカ   22      37  121    アメリカ   25      37  123    日本     20      35  123    日本     15      35  123    中国     30      30 【A1】を追加したいのです。 【A1】は【code】と【国名】が同じものの【A1】の値の合計 をあわしたいのですが、今は『DSum関数』を使っています。 条件として、「『code』と『国名』が同じレコードの合計値を出すのにはどうすればいいでしょうか? すみませんが、教えていただけるとありがたいです。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

パラメーターという言葉は (1)一般的にプログラムで良く使う、引数のようなもの 自由度を持たせるために変数等を設ける。 (2)数学、理系学問でのパラメータ (3)ACCESSのパラメータクエリのパラメータ(クエリ学習の第2時限目に最初に教える有名な事項) (4)その他文系学問でもたまに この(3)パラメータのことでは。そしてパラメータクエリは, [ ]の中に入力促進時の表示の文言を入れる。 >」演算フィールドで【newcode: [code] & "_" & [国名]】と入力し、が[code]がそれと取られたのではないか。 パラメータクエリの[]は条件の行で使うことが多いが。 ーー 実際に 税込み: [価格]*[率]と演算フィールドに入れると、実行すると パラメータ入力のダイアロウグボックスが開いた。上に「率」と表示されている。 例としては消費税は0.05に決っている殻おかしいが、実行の都度 変えたい他のケースの場合は使い道がある。

rie78
質問者

お礼

アドバイスありがとうございました。 色々と検討してみます。

  • umazanpai
  • ベストアンサー率38% (53/137)
回答No.2

経験上の山勘 グループ化/並べ替え に消したやつつかってないですか?

rie78
質問者

お礼

アドバイスありがとうございます。 グループ化/並べ替えにはひっかかっていませんでした。 他のやり方を考えてみます。

関連するQ&A

  • アクセス フィールドの追加

    今アクセスでデータベースを作っている、超初心者です。 クエリであるフィールドを追加したいのですが、そのフィールドの作り方がわからないので質問させていただきます。 まず、下記のようなテーブルがあるとします。(データの型は共にテキスト型です) 【code】  【国名】  111    日本  111    日本   111    中国  111    中国   121    アメリカ  121    アメリカ  123    日本  123    日本  123    中国 これに【newcode】という名のフィールドを追加したいのです。 例としては 【code】  【国名】    【newcode】  111    日本     111_日本  111    日本     111_日本  111    中国     111_中国  111    中国     111_中国  121    アメリカ   121_アメリカ  121    アメリカ   121_アメリカ  123    日本     123_日本  123    日本     123_日本  123    中国     123_中国 こんな感じで作りたいのですが、どのようにすればいいでしょう? どなたかお願いします。

  • アクセスのDsum関数の使い方

    これまでに何度となく同じような質問を出している者です。すみません・・・。以前は下記の【newcode】を【code】と【国名】から作成する方法を質問しその問題は解消しました。 【code】  【国名】    【newcode】  111    日本     111_日本  111    日本     111_日本  111    中国     111_中国  111    中国     111_中国  121    アメリカ   121_アメリカ  121    アメリカ   121_アメリカ  123    日本     123_日本  123    日本     123_日本  123    中国     123_中国 しかし、この表にはまだもう一つの作業が残っているのです。それは、下記のように 【code】  【国名】   【A1】 【A1合計】  111    日本     10    30  111    日本     20    30  111    中国     25    40  111    中国     15    40  121    アメリカ   22    37  121    アメリカ   25    37  123    日本     20    35  123    日本     15    35  123    中国     30    30 【A1】が追加されているのです。 そして、【A1合計】として【code】と【国名】が同じものを『DSum関数』を使用してレコードの合計値を出すにはどうしたらいいでしょうか? 以前は、上にあった【newcode】を使い、『DSum("[A1]","[シート名]","[newcode]='" & [newcode] & "'")』といった演算でやっていたんですが・・・。条件を『[code]=[code]and[国名]=[国名]』といった感じでやりたいのです。 すみませんが、教えていただけるとありがたいです。

  • パラメータ入力画面について

    アクセス2003を使用しています。 売上入力で使用していて、月別で売上台数等を出します。 その際、パラメータ入力で「月日は?」と表示されていました。 追加記入したいところがあったので、 テーブルをデザインビューでフィールド名を変更しました。 すると、パラメータ入力が2回出るようになり、 1回目はテーブル名と変更したフィールド名 2回目に「月日は?」 と表示されるようになってしまいました。 クエリの抽出条件のところにも、「月日は?」も何も記入されていないのに、 どこから、この表示が出ているかわかりません。 どのようにすれば、1回の表示に戻るのか教えてください。 宜しくお願いします。

  • access2002でのパラメータ表示

    こんにちは、初めて質問します。 OS:WinXPsp2 ソフト:access2002 accessの初心者なのですが、質問があります。 テーブルを一つ作り、そこから選択クエリを一つ作りました。 その中で「住所」フィールドと「水道局」フィールドという項目があり、 「住所」フィールドは”あいまい検索”にしてパラメータ表示から検索するようにし、 「住所」を入力すると「水道局」の答えが返ってきます。 例えば、クエリを実行するとすぐに「住所」のパラメータ画面が表示されますが、 その中に”江戸川区一之江”と入力すると、データシートビュー画面の 「水道局」フィールドに一之江水道局”と答えが返ってきます。 ここから本題なのですが、フォームで「水道局」というテキストボックスと 「水道局検索」というコマンドボタンを設置し、マクロで先ほど作ったクエリを実行させて、 パラメータ画面内に”江戸川区一之江”と入力すると 同じフォーム内の「水道局」のテキストボックス内に”一之江水道局”と表示させたいのですが、 どうしてもクエリのデータシートビュー画面が開きその中で答えが返ってきてしまいます。 「水道局」のテキストボックスの中に答えが入るにはどういうマクロを使えばいいのでしょうか? なんとかクエリ自体をフォームのフィールドリストにして、 「水道局」のテキストボックスを作りましたが、毎回フォームを開くと パラメータ表示画面が出てきます。 その最初に出てくるパラメータ表示画面を出なくさせるにはどうすれば よいのでしょうか? 誰かお知恵をおかしください。

  • 演算フィールドが、パラメータクエリになってしまうのはなぜ?

    アクセス2003を使っているのですが、演算フィールドを作るために、フィールド名に[]を使うと、パラメータクエリとして動作してしまうのですがなぜでしょうか? 同じように作り直すと、正常に、演算フィールドとして、動作するのですが、パラメータクエリと演算フィールドの式は、同じ[]を使いますが、どこが違うと、どっちになるのでしょうか? 今は、作ってみないと、どっちになるかわかりません。

  • Access クエリ作成でパラメータが表示される件

    クエリの新規作成で次の1~4のようにフィールドを追加し条件を入れました。 1.フィールド・・・レンタル開始日、テーブル・・・Tレンタル明細 2.フィールド・・・レンタル終了日:[レンタル開始日]+7 3.フィールド・・・返却日、テーブル・・・Tレンタル明細 4.フィールド・・・遅延日数:[返却日]-[レンタル終了予定日] このでデータシートビューに表示できます。 しかし、4.に抽出条件>0を入れてしまうと、パラメータ入力が要求され『レンタル終了予定日』の入力を出ます。 なぜ正しく実行できずパラメータがでるのでしょうか?

  • パラメータクエリを一つにまとめたい

    クエリ1を基にフォーム1を作成、 クエリ2を基にフォーム2を作成、 クエリ1も2もパラメータクエリを使用していて フィールド名は「番号」データ型はテキスト型です。 そして新規にフォーム3を作成しフォーム1とフォーム2をドラッグしました。 この状態でフォーム3をダブルクリックすると パラメータの入力を2回求められますがどちらも同じ番号を入力しています。 (「001」などを2回入力) これを1回にすることは可能でしょうか? ・番号フィールドの基テーブルはクエリ1と2は違うテーブルです。 ・クエリ1と2は一つにまとめたくありません。 フォーム3上に別々に表示させたいです。 ・クエリ1には全ての番号がありますがクエリ2には抜けている番号があります。 「クエリ1の全レコードとクエリ2の同じ結合フィールドのレコードだけを含める。」で全ての番号を表示できる状態です。 説明が下手ですいません。 アドバイスお願い致します。

  • Access2000:[パラメータの入力]ダイアログを表示されないようにするには

    初心者です。よろしくお願いします。 フォームが完成したあとで、クエリ/テーブルから削除したいフィールドが発生してしまいました。 削除したいフィールドのコントロールをフォームから消した後に、クエリ/テーブルからフィールドを削除しました。 削除したあとにフォームを開いたところ、[パラメータの入力]ダイアログボックスが表示されてしまいました。(メッセージは"開こうとしているフォーム名" クエリ:"削除したフィールド名"です) このダイアログボックスが表示されないようにしたいのですが、どうすればよいでしょうか。 ちなみに削除したフィールドは単なるテキスト型で、選択クエリでも抽出条件等は設定していませんでした。 初歩的な質問ですみませんが、よろしくお願いします。

  • ACCESS 「パラメータの入力」を消したい!!

    アクセス初心者です! レポート作成しています。 新規作成-デザインビュー-基になるクエリを選択 テキストで文字を入力 ビューにす・る・と・・・ 「パラメータの入力」と表示されます。 [OK]を選択するとレポートのビューが見れますが、これはどのようにしたら出ないようになるのでしょうか? おわかりの方教えてくださーい!

  • パラメータクエリの非表示化

    お世話になります。 Access2000を使っています。 テーブルのフィールド名の変更後、パラメータクエリを実行したら そのパラメータクエリのほかにも設定していないパラメータクエリが 表示されてしまいます。 表示させない方法はありますか?

専門家に質問してみよう