クエリのレコードを都道府県の地理順に並べ替える

[Access 2016/2013/2010]

クエリのレコードを都道府県の地理順に並べ替えたいことがあります(図1図2)。しかし、[都道府県]フィールドに[昇順]や[降順]の並べ替えを設定しても、地理順にはなりません。地理順に並べるには、その並び順を何らかの方法で定義する必要があります。

並び順を定義するには、関数を使う方法やテーブルを使う方法が考えられます。ここでは、テーブルを利用して並び順を定義する方法を紹介します。

図1 このようなクエリを…(→図2へ)。

図2 都道府県の地理順に並べ替えたい。

スポンサーリンク

Step.1 都道府県テーブルを作成する

都道府県を地理順に並べ替える下準備として、都道府県の並び順を定義するためのテーブルを作成しましょう。

ここでは、「T_都道府県」という名前のテーブルを作成し、JIS規格(JIS X 401)の都道府県コードを参考に図3のようにデータを入力しました。北海道から沖縄県まで、概ね北東から南西へと都道府県が並びます。

図3 [T_都道府県]テーブルを作成し、都道府県を表示したい順序で都道府県名を入力しておく。

ちなみに、今回入力したデータは以下のとおりです。

都道府県コード 都道府県
01 北海道
02 青森県
03 岩手県
04 宮城県
05 秋田県
06 山形県
07 福島県
08 茨城県
09 栃木県
10 群馬県
11 埼玉県
12 千葉県
13 東京都
14 神奈川県
15 新潟県
16 富山県
17 石川県
18 福井県
19 山梨県
20 長野県
21 岐阜県
22 静岡県
23 愛知県
24 三重県
25 滋賀県
26 京都府
27 大阪府
28 兵庫県
29 奈良県
30 和歌山県
31 鳥取県
32 島根県
33 岡山県
34 広島県
35 山口県
36 徳島県
37 香川県
38 愛媛県
39 高知県
40 福岡県
41 佐賀県
42 長崎県
43 熊本県
44 大分県
45 宮崎県
46 鹿児島県
47 沖縄県

Step.2 クエリで並べ替えの設定をする

都道府県の並び順を定義した[T_都道府県]テーブルが作成できたら、クエリの並べ替えの設定を行います。

まず、クエリのデザインビューを開き、[デザイン]タブの[テーブルの表示]ボタンをクリックして、クエリに[T_都道府県]テーブルを追加します(図4)。

図4
1)並べ替えを設定するクエリのデザインビューを開く。
2)[デザイン]タブの[テーブルの表示]ボタンをクリックするとテーブルの選択画面が表示されるので、[T_都道府県]テーブルを追加しておく。

[T_都道府県]テーブルが追加されたら、[都道府県]フィールドから[都道府県]フィールドへドラッグします(図5)。

図5
3)[T_都道府県]テーブルが追加された。
4)[都道府県]フィールドから[都道府県]フィールドへドラッグする。

2つのテーブルが[都道府県]フィールドで結ばれます。デザイングリッドに[T_都道府県]テーブルの[都道府県コード]を配置し、[昇順]の並べ替えを行います(図6)。

図6
5)2つのテーブルが[都道府県]フィールドで結ばれた。
6)デザイングリッドに[都道府県コード]フィールドを配置する。
7)[都道府県コード]フィールドの[並べ替え]欄で[昇順]を設定する。

いったん、データシートビューに切り替えて、クエリの状態を確認しましょう。レコードが都道府県コードの昇順に並べ替えられ、結果として都道府県の地理順に並んでいることを確認できるはずです(図7)。

図7 レコードが[都道府県コード]順に並べ替えられ、結果として都道府県の地理順に並ぶ。

デザインビューに戻り、[都道府県コード]の[表示]のチェックを外すと(図8)、冒頭の図2のようにデータシートに[都道府県コード]が表示されなくなります。

図8 [都道府県コード]の[表示]のチェックを外す。

 

メモ

項目数が少ない場合は関数を使う方法が便利
並び順を定義するには、Switch関数を使う方法もあります。例えば、[都道府県]フィールドに四国の4県のみが入力されているテーブルで、レコードを「徳島県」「香川県」「愛媛県」「高知県」の順に並べ替えるには、次の式から演算フィールドを作成し、[昇順]に並べ替えます。
Switch([都道府県]="徳島県",1,[都道府県]="香川県",2,[都道府県]="愛媛県",3,[都道府県]="高知県",4)
並べ替えの基準になる項目数が少ない場合は、わざわざ定義用のテーブルを用意しなくても、クエリに関数を入れるだけで済むので簡単です。詳しくは「クエリのレコードを独自の順序で並べ替える」を参照してください。
スポンサーリンク

関連記事