フィールドのラベルをクリックで並び替え

TIPSメインへ戻る

概要

WINDOWSのフォルダウインドウは項目の標題部をクリックするとその項目で並び替えが昇順と降順で交互 に行われます。この機能をアクセスの表形式フォーム上で持たせる方法です。

イメージ

次は例とする表形式のフォームです。「番号」「氏名」「フリガナ」「生年月日」のフィールドが表示 されていて、上部にラベルがあります。このラベル部をクリックすることでそのフィールドの並び替え を行います。

作成手順

  1. フォームのデザインビューで開き、ラベルにクリック時イベントプロシージャを作ります。


  2. イベントプロシージャで[フリガナ]フィールドで昇順に並び替える命令を作ってみました。これでラベルをクリックする 度に[フリガナ]フィールドで昇順と降順に並び替えができます。

    Option Compare Database
    Option Explicit
    ' yes/no 型の変数を指定
    Private fg As Boolean

    Private Sub フリガナ_ラベル_Click()
    ' fg がfalse のとき
    If fg = False Then
    ' フリガナフィールドを昇順に並べる
    Me.OrderBy = "[フリガナ] asc"
    Me.OrderByOn = True
    ' fg をtrueにする
    fg = True

    ' fg がtrue のとき
    Else
    ' フリガナフィールドを降順に並べる
    Me.OrderBy = "[フリガナ] desc"
    Me.OrderByOn = True
    ' fg をfalseにする
    fg = False

    End If

    End Sub

  3. [フリガナ]フィールド以外にも同様に作成することで、ラベルによる並び替えのフォームが完成です。

実行結果

フリガナラベルをクリックしました。フリガナフィールドが昇順に並べられています。

フリガナラベルを再度クリックしました。フリガナフィールドが降順に並べられています。

(この項終わり)