ACCESS VBA ASCで昇順に並べ替える方法

ASCで昇順に並べ替える方法

ACCESSではVBAを使ってフォームやレポートのレコードの並べ替えが可能です。
並べ替えをする際は、どのフィールドを使って並べ替えをするかを指定した上で、昇順・降順を指定できます。

今回は、ASCで昇順に並べ替える方法をご紹介します。


こんにちは。
はこにわガジェット (@hakoniwagadget) です。

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは基本機能だけでも十分便利ですが、VBAを使うことで格段に使いやすいデータベースを作成可能です。
この記事ではACCESSでのVBAの使い方をご紹介していきます。

昇順で並べ替える際の記述方法

最初に、昇順で並べ替える際の記述方法を記載します。
現在開いているフォームもしくはレポートを「顧客名」フィールドの昇順で並べ替える際には以下のようにVBAで記述します。

もしくは

1行目のコードで顧客名フィールドを指定して並べ替えしています。
並べ替えの際の既定値は昇順なので1つ目の例のように何も指定しなくても昇順になりますが、明示的に指定するには下の例のようにフィールド名の後に半角スペースを空けてACを記述します。

以下、詳しくご紹介します。

ACCESSでの並べ替え

ACCESSでVBAを使って並べ替えを行う際に使用するのが、OrderBy句です。
主にフォームやレポートなどのオブジェクトに対してOrderBy句を利用することでレコードの並べ替えが可能です。

OrderBy句は以下の構文で利用します。

オブジェクト名の部分にはフォームやレポートの名前を入力します。

例えば、現在開いているフォームを顧客名で並べ替えする際には以下のように記述します。

直後のMe.OrderByOn = Trueは、OrderByでの並べ替えを有効するための命令ですので、セットで利用します。

OrderByの利用方法に関してはこちらに記事もご覧ください。

OrderByを使って並べ替える方法

昇順、降順の指定

OrderByで並べ替えをする際に、昇順、降順を指定することができます。

対象の項目がテキスト側の場合は昇順はあいうえお順、降順は逆順になります。
文字種が混在するフィールドの場合は、昇順では数値、英字、日本語ひらがなの順番で並べ替えられます。

OrderByでは特に昇順、降順を指定しない場合は昇順になりますが、明示的に昇順にする場合はASCと記載します。
逆に降順を指定する際に利用するのがDESCです。

昇順、降順を指定する際は、OrderByで指定するフィールド名の後に半角スペースを空けてそれぞれを記載しましょう。
先ほどの例を修正すると以下になります。

昇順の場合

降順の場合

以上、ASCで昇順に並べ替える方法をご紹介しました。


ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。

そんな時は、ACCESS開発歴20年以上、過去に100以上のACCESSデータベースを開発してきた私(@hakoniwagadget)にお任せください。

ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

サービス一覧

最後までお読みいただき、ありがとうございました。