エクセルのvba(最終行を取得する並び替え)
初めまして、エクセルのvbaについて質問をさせてください。
マクロの記録を使って、以下の通りF列→M列→J列の順に優先して、A列からAL列を昇順に並び替えるvbaを作成したのですが、10000行までとう不恰好な書き方になっています。最終行までという書き方に変えたいのですが、色々試したもののうまくいきません…!この場合、最終行を取得するにはどのような書き方にすれば良いのでしょうか…??(T-T)
'並び替え
ActiveWorkbook.Worksheets("当月").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("当月").Sort.SortFields.Add Key:=Range("F2:F10000"_
), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortTextAsNumbers
ActiveWorkbook.Worksheets("当月").Sort.SortFields.Add Key:=Range("M2:M10000"_
), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("当月").Sort.SortFields.Add Key:=Range("J2:J10000"_
), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("当月").Sort
.SetRange Range("A1:AL10000")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
お礼
回答ありがとうございます。 希望した通り、最終行が異なった時に、その列の位置をMsgBoxにて表示する事が来ました。 それプラス各列の位置もMsgBoxで表示できたのが良かったです。 助かりました。 今後ともよろしくお願いします。