クエリの実行時にパラメーターを使って入力を求める

適用先
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Access データベースでクエリを実行するときに条件を要求するには、パラメーター クエリを作成します。 これにより、同じクエリをデザイン ビューで常に開いて条件を編集することなく、何度も同じクエリを使用できます。

用語について

以下の手順に進む前に、次の用語を理解しておくと役立ちます。

  • パラメーター パラメーターは、クエリを実行するときにクエリ権限に指定する情報の一部です。 パラメーターは、単独で使用することも、より大きな式の一部として使用して、クエリの条件を形成することもできます。 パラメーターは、次のいずれかの種類のクエリに追加できます。

    • 選択する
    • クロス集計
    • 追加
    • 表作成
    • 更新
  • 条件 条件は、クエリの実行時に返される項目を指定するためにクエリに追加する "フィルター" です。

上記のクエリの種類の詳細については、「クエリの概要」を参照してください。

パラメーター クエリを作成する

パラメーターの作成は、クエリに通常の条件を追加するのと似ています。

  1. 選択クエリを作成し、デザイン ビューでクエリを開きます。
  2. パラメーターを適用するフィールドの [ 抽出条件 ] 行に、パラメーター ボックスに表示するテキストを角かっこで囲んで入力します。 たとえば、[ 開始日を入力します:]
    簡単なパラメーター クエリ。
  3. パラメーターを追加する各フィールドについて、手順 2. を繰り返します。

このクエリを実行すると、角かっこなしでプロンプトが表示されます。

テキストが表示されたパラメーター プロンプト 開始日を入力します。

探している値を入力し、[OK] をクリック します

抽出条件に複数のパラメーターを使うことも可能です。 たとえば、Between [開始日を入力してください:] And [終了日を入力してください:] では、クエリを実行すると 2 つのプロンプトが表示されます。

2 つのパラメーターを持つパラメーター クエリ。

クエリ条件のその他の例については、「クエリ条件 の例」を参照してください。

パラメーターのデータ型を指定する

パラメーターは、特定の種類のデータのみを受け入れるように設定できます。 数値、通貨、または日付/時刻データのデータ型を指定することは特に重要です。そのため、通貨値が予想される場合にテキストを入力するなど、間違った種類のデータを入力すると、より役立つエラー メッセージが表示されます。

テキスト データを受け取るようにパラメーターが構成されている場合、入力はすべてテキストとして解釈され、エラー メッセージは表示されません。

クエリのパラメーターのデータ型を指定するには、次の手順に従います。

  1. デザイン ビューでクエリを開いた状態で、[ クエリ デザイン ] タブの [ 表示/非表示 ] グループで [ パラメーター] をクリックします。
  2. [クエリ パラメーター] ボックスの [パラメーター] 列に、データ型を指定する各パラメーターのプロンプトを入力します。 各パラメーターが、クエリ デザイン グリッドの [抽出条件] 行で使ったプロンプトと一致していることを確認してください。
  3. [データ型] 列で、各パラメーターのデータ型を選択します。

ユニオン クエリにパラメーターを追加する

クエリ デザイン グリッドで共用体クエリを表示できないため、少し異なる操作を行う必要があります。

  1. ユニオン クエリを SQL ビューで開きます。
  2. パラメーターの追加先にするフィールドを含む WHERE 句を追加します。
    WHERE 句が既に存在する場合は、その句の中にパラメーターの追加先にしたいフィールドが既に入っているかどうかを調べます。 そうでない場合は、追加します。
  3. WHERE 句にパラメーターのプロンプトを入力します。例: WHERE [StartDate] = [開始日を入力してください:]
    両方の部分に次のような句を持つ、2 パートのユニオン クエリ: WHERE StartDate = [開始日を入力してください:]
    クエリの各セクションに同じフィルターを追加する必要があることに注意してください。 上の図では、クエリは 2 つのセクションを持つため (UNION キーワードで区切られています)、パラメーターを 2 回追加する必要があります。 それでも、クエリを実行すると、プロンプトは 1 回しか表示されません (各セクションにまったく同じプロンプトを入力したものとします)。

共用体クエリの詳細については、「 共用体クエリを使用して複数のクエリを 1 つの結果に結合する」を参照してください。

ワイルドカードでパラメーターを結合して柔軟性を高める

通常の抽出条件と同じように、パラメーターも Like キーワードやワイルドカード文字で結合して、より幅広い項目に一致するようにすることができます。 たとえば、原産国/地域の入力を求め、そのパラメーター文字列を含む値はすべて一致するというクエリを作成できます。 そのためには、次の操作を行います。

  1. 選択クエリを作成し、デザイン ビューでクエリを開きます。

  2. パラメーターを適用するフィールドの [抽出条件] 行に「Like "*"&[」と入力し、プロンプトとして使うテキストを入力し、その後ろに「]&"*"」と入力します。

    CountryRegion 列に次の条件を含むクエリ デザイン グリッド: Like * & [Enter country/region:] & *

このパラメーター クエリを実行すると、ダイアログ ボックスには、次のように "Like" キーワードとワイルドカード文字を除いた、角かっこのないプロンプトが表示されます。

[Enter country/region]\(国/地域の入力\) というテキストを含むパラメーター プロンプト。

パラメーターを入力すると、そのパラメーター文字列を持つ値がクエリから返されます。 たとえば、パラメーター文字列 us は、パラメーター フィールドの値が Australia の行および USA の行を返します。

ワイルドカードの詳細については、「 ワイルドカード文字の例」を参照してください。

パラメーターと一致しない項目を返す

クエリがパラメーターに一致する項目を返す代わりに、クエリが一致しない項目を返す場合があります。 たとえば、年の入力を求め、入力した年よりも年が大きい項目を返すような場合です。 これを行うには、パラメーター プロンプトを囲む最初の角かっこの左側に比較演算子を入力します(例: >[Enter a year:])。

ビデオ: クエリでパラメーターを使用する

クエリでパラメーターを使用することは、抽出条件を使用するクエリを作成するのと同様に簡単です。 1 つの情報 (部品番号など) または複数の情報 (2 つの日付など) の入力を求めるクエリを定義できます。 パラメーター クエリでは、パラメーターごとに、そのパラメーターの値の入力を求める個別のダイアログ ボックスが表示されます。

クエリでパラメーターを作成する方法の詳細についてはこのビデオをご覧ください。

関連項目

クエリの抽出条件の例

クエリ、フォーム、レポートでパラメーターを使用する