Top / TIPS / VB でお気楽ソート

いままで、どうしても VB でやらなければならなくなった場合、シコシコ コーディングしてたソート処理ですが、Microsoft ActiveX Data Objects(ADO) を 使うことによって、すごく簡単になります。

ADO を参照設定し、フォームに、リストボックスを貼り付けて、以下のコードを 実行してみてください。

なんと、ソートのロジックは、(Recordset).Sort "ソートフィールド名" のみ!

 Option Explicit

 Private Sub Form_Load()

     Dim objRec As ADODB.Recordset
     Dim lngValue As Integer
     Dim i As Long

 '   Recordset オブジェクトを作成
     Set objRec = New ADODB.Recordset

 '   フィールドを追加
     With objRec.Fields
         Call .Append("myfield0", adInteger, , adFldIsNullable)
         Call .Append("myfield1", adVarChar, 10, adFldIsNullable)
     End With

     With objRec
 '       Recordset オブジェクトにテストデータを格納
         Call .Open
         For i = 1 To 100
             lngValue = Rnd(1) * 32767
             .AddNew
             .Fields(0) = lngValue
             .Fields(1) = CStr(lngValue)
             .Update
         Next

 '       ソート。なんと、この一文だけ!(^_^;)

         .Sort = "myfield0"

 '        リストボックスに表示
         .MoveFirst
         Do Until .EOF
             List1.AddItem .Fields(1)
             .MoveNext
         Loop
         .Close
     End With

    Set objRec = Nothing

 End Sub



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   最終更新のRSS
Last-modified: 2009-10-25 (日) 23:56:03 (2852d)