Access。都道府県など、独自の順番で並び替えをしたいけど、どうしたらいいの?
<Access>
Excelだと、独自の順番で並び替えを行うには、ユーザー設定リストに登録することで実行することができます。では、Accessでは、どのようにしたらいいのでしょうか?
例えば、都道府県を北海道から沖縄までの順番で並び替えを行いたいとしたらというケースで考えていきましょう。
まず、独自の順番で並び替えを行うためのT都道府県テーブルを作成します。
都道府県コードフィールドを数値型。
都道府県フィールドを短いテキスト型で、設定しています。
並び替えを行いたいテーブルも確認しておきます。
このT顧客管理というテーブルには、都道府県フィールドがあって、このテーブルの都道府県フィールドを北海道から沖縄の独自の順番で並び替えをおこないたいわけです。
【独自の順番で並び替えはクエリで簡単にできる】
T顧客管理とT都道府県という二つのテーブルをつかって、クエリを作ることで、簡単に独自の順番で並び替えができます。作成タブのクエリデザインを使って作成してきます。
二つのテーブルを挿入したら、双方にある都道府県フィールドを連結してリレーションシップを設定します。
フィールドを設定していきます。
T顧客管理のフィールドをすべて設定します。
そして、T都道府県から都道府県コードフィールドを設定します。
並び替えを「昇順」に設定します。
表示する必要がないので、表示のチェックマークはオフにします。
それでは、確認してみましょう。
このように、Excelのユーザー設定リストを使った並び替えのように、Accessでも独自の順番で並び替えをすることができました。
なお、今回は都道府県で、件数が多かったので、別のテーブルを用意しましたが、件数がそれほど多くないときには、Switch関数を使うといいですね。
次のように演算フィールドを作ることでも、独自の順番で並び替えができます。
順番: Switch([都道府県]="北海道",1,[都道府県]="青森県",2,[都道府県]="福島県",3,[都道府県]="東京都",4,[都道府県]="神奈川県",5,[都道府県]="石川県",6,[都道府県]="大阪府",7,[都道府県]="高知県",8,[都道府県]="大分県",9,[都道府県]="沖縄県",10)
今回は、10種類なので、こんなに長い演算式になってしまいましたので、もう少し少ないと使いやすいかもしれませんね。
それでは、実行してみると、並び替えができましたね。
Switch関数は、○○だったら、1。○○だったら、2というように算出してくれる仕組みです。
どちらをつかっても、独自の順番で並び替えをすることができますよ。