アプリ版:「スタンプのみでお礼する」機能のリリースについて

参考にしたマクロのコードです。
Sub Macro3()
'==宣言など

Dim i As Long
Dim buf As String

'==処理
With ActiveSheet.Rows("3:300")
この上は以前の参考です。

A組だけの処理のつもり(手動のマクロ記録をまとめてみました)
' Rows("3:28").Select
Application.CutCopyMode = False

'並び替えの実行
.Sort _
     Key1:=Range("F3"), Order1:=xlDescending, _
     Key2:=Range("K3"),Order2:=xlDescending, _
     Header:=xlGuess, OrderCustom:=1, MatchCase:= False, _
     Orientation:=xlTopToBottom, SortMethod:=xlPinYin, _
     DataOption1:= xlSortNormal, _
     DataOption2:=xlSortNormal, _
 F列が男女、K列が合計

'並び替えの実行のところは、以前に教わった並び替えのコードを使ってみました。この後をどのようにしたらよいか。下記のことも踏まえて、教えて頂けませんか。ちなみに
この上のコードはA組だけの処理です。後は38名ずつのループ処理になります。

上記の処理は合計点数の3桁から2桁の男子が上、その後が女子です。(この時に5段階評価の生徒も男女別で合算してソートされてしまいます)。手動だと上記・下記のコードのようにやらなくては、ならないのです。合計が5段階評価のまとまりで男女とそれ以外のまとまりで男女の降順とに区別したい訳です。後の生徒はクラス毎A~H(Aだけ26名・他は38名です)、この5段階評価は生徒がいる場合といない場合もあったり、人数もばらばらですが、一括して処理できますか。

男児別の降順後に、5段階評価のまとまりで男女を処理したもの
   ActiveWindow.SmallScroll Down:=9
    Rows("16:17").Select
    Selection.Copy
    Rows("24:25").Select
    Selection.Insert Shift:=xlDown
    Rows("16:17").Select
    Application.CutCopyMode = False
    Selection.Delete Shift:=xlUp
End Sub

それとも、これを応用したらよいのでしょうか。高度すぎて、コードのどこを変更したらよいのか、皆目分かりません。すみませんが、どうでしようか。

https://oshiete.goo.ne.jp/qa/10361868.html

End Sub
Dim iSize As Long
Dim iStart As Long
iSize = 26
iStart = 3
Do While iStart <= 29
With ActiveSheet.Cells(iStart, "A")
.Resize(iSize, 15).Sort Key1:=Range("K:K"), Order1:=xlDescending
.Value = 1
.AutoFill Destination:=.Resize(iSize), Type:=xlFillSeries
End With
iStart = iStart + iSize
iSize = 38
Loop
End Sub

合わせて下記の処理も同時にできないでしょうか。300の数値がマクロで処理すると変わってしまうので、合わせて処理ができると、ありがたいのですがねどうでしょうか。
なお、別マクロでもかまいませんので、お教え下さい。
Q2~W2=
COUNTIF($B3:$B300,"A")←同じ処理をB~Hまでやります

Y2~AF2=
SUMIF($B$3:$B$300"A",$K$3:$K$300)←同じ処理をB~Hまでやります

AV~BI
AV2,AX2,AZ2,BB2,BD2,BF2,BH2=
SUMPRODUCT(($F$3:$F$300="男")*($B$3:$B$300="A"))←同じ処理をB~Hまでやります
AV~BI
AW2,AY2,BA2,BC2,BE2,BG2,BI2=
SUMPRODUCT(($F$3:$F$300="女")*($B$3:$B$300="A"))←同じ処理をB~Hまでやります

質問者からの補足コメント

  • へこむわー

    単独に別に下記の用件でマクロは出来ませんでしょうか。お教え頂けませんか。自分ではよくできません。よろしければコードを教えて頂けませんか。

    Q2~W2=
    COUNTIF($B3:$B300,"A")←同じ処理をB~Hまでやります

    Y2~AF2=
    SUMIF($B$3:$B$300"A",$K$3:$K$300)←同じ処理をB~Hまでやります

    AV~BI
    AV2,AX2,AZ2,BB2,BD2,BF2,BH2=
    SUMPRODUCT(($F$3:$F$300="男")*($B$3:$B$300="A"))←同じ処理をB~Hまでやります
    AV~BI
    AW2,AY2,BA2,BC2,BE2,BG2,BI2=
    SUMPRODUCT(($F$3:$F$300="女")*($B$3:$B$300="A"))←同じ処理をB~Hまでやります

    No.1の回答に寄せられた補足コメントです。 補足日時:2018/03/23 11:17

A 回答 (1件)

文章だけだとよくわからないですね。



元のデータのフォーマットにやりたいことを吹き出しで書くなどした画像を貼り付けるなどされた方がよろしいのではないでしょうか。
この回答への補足あり
    • good
    • 0

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