プロが教えるわが家の防犯対策術!

下記のコードで、並べ替えをしようとしました。
詳しくは、
1.K列を降順に並べ替えをします。合計の数値の多い順にそれぞれのグループを並べ替えしようとしています。
2.ABCDEFGのそれぞれのグループがAは26行の並べ替え。BCDEFGのグループは40行の並べ替えです。("A3:N28")はうまく並べ替えができました。しかし、何か違和感を思います。xlFillSeries(連続する数値(たとえば、’1, 2′ は ‘3, 4, 5’ となります)となる。ここのコードに合わせて、作成できればいいのですが・・・・。それと、With .Range("A29:N268").Sort( _のところは、どうしてもうまくいきません。どのようにしたら、いいのでしょうか。思うような結果が得られません、お教え頂けませんか。よろしくお願いします、マクロを覚え立てで申し訳ありません。
なお、
3.Key3:=Range("K3"), Order3:=xlAscending, _これも新たに設定しましたが、必要でしょうか。

マクロの一部分ですを示しています。
'並び替えの実行
.Sort _
Key1:=Range("B3"), Order1:=xlAscending, _
Key2:=Range("D3"), Order2:=xlAscending, _
Key3:=Range("K3"), Order3:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
DataOption1:=xlSortNormal
中略

With ActiveSheet
'連続データの生成
With .Range("A3:N28").Sort( _
Key1:=Range("K3"), _
Order1:=xlDescending)
End With

With .Range("A3")
.Value = 1
.AutoFill Destination:=.Resize(26), Type:=xlFillSeries
End With

For i = 29 To 229 Step 40
With .Range("A29:N268").Sort( _
Key1:=Range("K3"), _
Order1:=xlDescending)
End With

With .Cells(i, "A")
.Value = 1
.AutoFill Destination:=.Resize(40), Type:=xlFillSeries
End With
Next i

A 回答 (1件)

バージョンが古かったのか、私はVBAでソートが書けませんでした。

ソートの部分のみ記録マクロをとって部分修正で対応しました。
    • good
    • 1
この回答へのお礼

ありがとうございました。

お礼日時:2018/03/16 11:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!