ExcelではVLOOKUP関数やRANK関数を使用しランク分けを行いますが、Accessでは範囲を設定したテーブルとBetween演算子でクエリを作成することで作成できます。
作成方法は、ランク付けするデータのテーブルとランクの範囲が登録された2つのテーブルを用意します。
次に2つのテーブルでクエリを作成しますが、この時結合はしません。
ランク付けするデータにBetween~AND演算子を入力すれば完成です。
Between~AND演算子とは、指定した値が範囲内かどうか判定する演算子です。
関連する「AccessのVBAでSQLのNotとBetween Andを使い範囲外のレコードを抽出する|フォーム実行例」を掲載していますので参考にしてください。
ランク分けを行う、従業員数テーブルです。
従業者数フィールドの数値をランク分けします。
ランク分けの範囲を指定したランク付けテーブルです。
0から10000までをAランク、10001から50000までをBランクのように指定しています。
選択クエリのような、2つのテーブルに共通するフィールドは必要ありません。
リボンの[作成]~[クエリ デザイン]をクリックします。
テーブルの表示ダイアログが開くので、従業員数テーブルとランク付けテーブルをダブルクリックし、クエリ デザイン画面に追加します。
2つのテーブルは結合しません。
追加が終了すると[閉じる]ボタンをクリックし、ダイアログを閉じます。
従業員数テーブルから、「コード」「部門名」「従業者数」フィールドをダブルクリックし下に移動します。
ランク付けテーブルから、「ランク」フィールドをダブルクリックし下に移動します。
Between演算子を下のように入力します。
Between [T_ランク付け]![開始範囲] And [T_ランク付け]![終了範囲]
これで2つのテーブルは指定した範囲で結合されます。
リボンの[クエリ ツール]~[デザイン]~結果グループの[実行]をクリックします。
従業者数が指定した範囲でランク分けすることができました。
以上の方法で、ランク範囲を変更したテーブルを元に複数のクエリを作成すれば、テストやシュミレーションが簡単に実行できます。