下の「マクロ練習用3」ボタンを押して、マクロ練習用3ファイルを開いてください。
「開発」のタグの左の方に「マクロの記録」があります。
この「マクロの記録」をクリックすると下の画面が出てくるので、「Macro1」を「並べ替え男女」と変えます。
ここでは「並べ替え」の作業を記録します。A2~L21の範囲をマウスでドラッグして選択してください。
「データ」のタグの「並べ替え」をクリックします。
最優先されるキーのところで「性」を選択します。順序は「昇順」(小→大)と「降順」(大→小)があります。そのまま「昇順」にしておいて、「OK」を押します。男女が上下に分かれて並べ替えられます。
最後に「開発」のタグの「記録の終了」を押すことを絶対に忘れないでください。
以下のようなマクロが自動で作成されいます。
Sub 並べ替え男女()
Range("A2:L20").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2 Key:=Range("D2:D20") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:L20")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub |
今度は、同じ方法で、組番の順に並べ替えて元に戻します。まず「マクロの記録」をクリックして、マクロ名を「並べ替え組番」と書き換えます。A3~L21を選択して、「データ」タグの「並べ替え」をクリックします。そして、「組」「番」の順にキーを選びます。
「OK」を押すと、組番の順になります。最後に「記録の終了」を押します。以下のようなマクロが自動で作成されています。
Sub 並べ替え組番()
Range("A2:L20").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2 Key:=Range("B2:B20") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2 Key:=Range("C2:C20") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:L20")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub |
それぞれ「男女順」のボタンと「組番順」のボタンを作成すれば、いつでも並べ替えがボタン一つでできるようになります。
しかし、もし「記録の終了」を忘れてしまうとどうなってしまうのでしょうか。作業が延々記録されていくことになります。絶対に忘れないでください。
|