趣味のエクセルで当てよう!ロト・ナンバーズ

当選狙いで、ナンバーズ4をメインにロト、ビンゴ5などの各種データリストや、それらの分析用エクセルVBAなどについて書いてます。

計算式作成マクロ

10行おきに計算式の行が変わる時のマクロを作成しました。
上表の上の赤枠で囲んだ計算式をY列の最後の次行セル(空行)に作成します。


(ここでは関数COUNTIFで3桁の出現出目の集計をしています)



次行セルを選んで下記のマクロで計算式を作成してから下に10行分コピーします。


1.ナンバーズ4パターン表作成関係エクセルマクロ(1)


変数 知らなかった本当の使い方 


  Sub 間隔計算式入力()
Dim gyou As long, retu As long
 Worksheets("原本").Select


gyou = ActiveCell.Row
retu = ActiveCell.Column


If retu <> 25 And retu <> 25 Then End ’25列以外はマクロ終了(ミス防止)


 Cells(gyou, retu).Select


 If Cells(gyou, retu - 1) = 0 Then ’X列に出目0がある時Y列に下の計算式入力
   Cells(gyou, retu) = "=COUNTIF($E$" & gyou & ":$G$" & gyou + 9 & ",X" & gyou & ")"
 End If
 
   Selection.Copy ’計算式を出目分(10行)コピー貼り付けする
    Range(Cells(gyou, retu), Cells(gyou + 9, retu)).Select
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
       
End Sub


以前は手入力で計算式を入れてましたが、非常に面倒でした。


マクロなら間違いも無くすごく楽になりました。


10行おきにマクロで計算式入力していますが、For Nextなどを使って任意の行範囲での設定が出来ると思います。