HOME > 即効テクニック > AccessVBA > データ操作 > コマンドボタンでレコードの並び順を変更する

即効テクニック

データ操作

コマンドボタンでレコードの並び順を変更する

(Access)
OrderBy/並べ替えプロパティを使用すると、レコードを昇順または降順で並べ替えることができます。
ここでは、コマンドボタンをクリックするとレコードの並び順を変更できるように、OrderBy/並べ替えプロパティを使って操作します。

●準備●
<テーブル名:顧客管理>

フィールド名              データ型
-----------------------------------
顧客名                    テキスト型
住所                      テキスト型

*並び順が確認できるようにデータを入力してください。

●操作手順●
  1. テーブル「顧客管理」を基にするフォームを「オートフォーム:表形式」 ウィザードで新規作成します。
  2. 新規作成されたフォームをデザインビューで表示します。
  3. フォームフッターを表示して、次の2つのコマンドボタンを配置します。 コマンドボタン名:顧客名順 コマンドボタン名:住所順
  4. コマンドボタン「顧客名順」のプロパティーシートの[イベント]タブを クリックして、[クリック時]にイベントプロシージャを設定します。
  5. イベントプロシージャ表示ボタン[...]をクリックして、次のプロシージャ を作成します。
Private Sub 顧客名順_Click()
    Me.OrderBy = "顧客名"
    Me.OrderByOn = True
End Sub
  • コマンドボタン「住所順」のプロパティーシートの[イベント]タブを クリックして、[クリック時]にイベントプロシージャを設定します。
  • イベントプロシージャ表示ボタン[...]をクリックして、次のプロシージャ を作成します。
  • Private Sub 住所順_Click()
        Me.OrderBy = "住所"
        Me.OrderByOn = True
    End Sub
    
  • フォームを保存してからフォームビューで表示してボタンをクリックする と、ボタンに設定した項目の昇順でデータが並び替えられます。
  • ●補足説明● 降順に並び替える場合は次のように記述します。 Me.OrderBy = "顧客名 DESC" OrderByOn/並べ替え適用プロパティは、OrderBy/並べ替えプロパティの設定を適用するかどうかをTrue/Falseで示します。