#316 レコードの並べ替え(RecordSourceプロパティ) フォーム、クエリ、VBA

フォームに読み込み済みのレコードセットを並べ替える場合はOrderByプロパティを設定しますが、フォームのレコードソースとなっているクエリそのものを差し替えることで、並べ替えを行うこともできます。

それには、並べ替え基準ごとの複数のクエリを用意しておき、フォームの「RecordSourceプロパティ」でそれらを切り替えます。


たとえば、まず、並べ替えの異なる3つのクエリを作成します。
受注コード順のクエリ
得意先コード順のクエリ
社員コード順のクエリ


フォーム側では、次のようなイベントプロシージャを用意します。ここでは、オプショングループ"fraSort"の選択によってRecordSourceのクエリ名を切り替えています。
Private Sub fraSort_AfterUpdate()

  Dim strSource As String

  'オプショングループの選択によってクエリ名を設定
  strSource = Choose(Me!fraSort, _
                      "qsel受注受注順", _
                      "qsel受注得意先順", _
                      "qsel受注社員順")
  'RecordSourceプロパティを変更
  Me!受注_sub.Form.RecordSource = strSource

End Sub

[得意先コード]オプションを選択したとき
[得意先コード]オプションを選択したとき

[社員コード]オプションを選択したとき
[社員コード]オプションを選択したとき
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved