Excelで表を使った顧客管理ソフトを作ってみよう

Step 4 ソートの実行

「ソート」ボタンをクリックするとユーザーフォーム(FormSort)が表示されます。
「実行」ボタンをクリックすると、どのオプションボタンがONかチェックし並べ替えを実行します。

ソートのコードは下記になります。
Selection.SortSpecial SortMethod:=xlSyllabary, Key1:=Range(rg), Order1:=xlAscending, _
Key2:=Range("A5"), Order2:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlSortColumns

SortMethod := xlSyllabary 五十音順
Key1 : 並べ替えキー
Order1 := xlAscending 昇順
Header := xlGuess 先頭行に見出しがあるかどうかを調べさせる
OrderCustom := 1 並べ替え順序の指定
MatchCase := False 大文字と小文字を区別しない
Orientation := xlSortColumns 列単位で並べ替え



Homeへ > Excelでアプリケーションソフト2 > 顧客管理ソフトを作ってみよう

シートのVBAコード

下記のVBAコードを追加してください。

Option Explicit

Private Sub CommandButton1_Click()
    Dim rg As String
    
    If OptionButton1.Value = True Then
        rg = "A5"
    ElseIf OptionButton2.Value = True Then
        rg = "B5"
    ElseIf OptionButton3.Value = True Then
        rg = "C5"
    ElseIf OptionButton4.Value = True Then
        rg = "D5"
    ElseIf OptionButton5.Value = True Then
        rg = "E5"
    ElseIf OptionButton6.Value = True Then
        rg = "F5"
    ElseIf OptionButton7.Value = True Then
        rg = "H5"
    ElseIf OptionButton8.Value = True Then
        rg = "I5"
    ElseIf OptionButton9.Value = True Then
        rg = "J5"
    ElseIf OptionButton10.Value = True Then
        rg = "K5"
    End If

    Range("A5:L10004").Select
    Selection.SortSpecial SortMethod:=xlSyllabary, Key1:=Range(rg), Order1:=xlAscending, _
        Key2:=Range("A5"), Order2:=xlAscending, _
        Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlSortColumns
    Range("B5").Select
End Sub


シート画面

「会社名」をTrueにし、ソートを実行します。
ソート項目の選択

実行すると会社名が五十音順で並んでいます。
ソート結果

Homeへ > Excelでアプリケーションソフト2 > 顧客管理ソフトを作ってみよう

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved