趣味のエクセルマクロ

ナンバーズ4などの数字選択式宝くじデータ分析用の自作マクロおよびナンバーズ4の各種データリストなどをブログにしています。

マクロ作成方法12(マクロ自動記録)

マクロが自動で記録できるのは便利ですね!
下の様に両脇の罫線を赤色、下線を赤色点線や実線にするマクロを自動記録して見ました。(点線は元々点線なので赤色にします)


Sub Macro1() ’マクロ1 セルBN4933の両側と下を赤色にする自動記録マクロ
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft) ’セルの左の部分です
        .LineStyle = xlContinuous
        .Color = -16776961
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop) ’セルの上の部分です
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlHairline
    End With
    With Selection.Borders(xlEdgeBottom) ’セルの下の部分です
        .LineStyle = xlContinuous
        .Color = -16776961
        .TintAndShade = 0
        .Weight = xlHairline
    End With
    With Selection.Borders(xlEdgeRight) ’セルの右の部分です
        .LineStyle = xlContinuous
        .Color = -16776961
        .TintAndShade = 0
        .Weight = xlThin
    End With
    Selection.Borders(xlInsideVertical).LineStyle = xlNone
    Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
End Sub


Sub Macro2() ’マクロ2 セルBN4935の両側と下(実線にする)を赤色にする自動記録マクロ
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .Color = -16776961
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlHairline
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Color = -16776961
        .TintAndShade = 0
        .Weight = xlThin
    End With


    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .Color = -16776961
        .TintAndShade = 0
        .Weight = xlThin
    End With
    Selection.Borders(xlInsideVertical).LineStyle = xlNone
    Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
End Sub
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
 上の自動記録から必要な部分をさがし、マクロ作成方法11のストレート回数表示5回目と6回目の表示を下の様に改良しました。(最高6回なので7回目は作って無いですw)
私は必要な部分かどうかは試行錯誤しています。w



   caler = WorksheetFunction.CountIf(Range(Cells(2, 66), Cells(i, 66)), Cells(i, 66))
   
              Set stcolo = Cells(i, 66)
            stcolo.Borders(xlEdgeLeft).ColorIndex = 1
          If caler = 2 Then 'ストレート2回目緑色にする
                      stcolo.Borders(xlEdgeLeft).ColorIndex = 4


          ElseIf caler = 3 Then 'ストレート3回目赤色にする
                    stcolo.Borders(xlEdgeLeft).ColorIndex = 3
          
          ElseIf caler = 4 Then 'ストレート4回目両脇赤色にする
        
             stcolo.Borders(xlEdgeLeft).ColorIndex = 3
             stcolo.Borders(xlEdgeRight).ColorIndex = 3
         
          ElseIf caler = 5 Then 'ストレート5回目両脇赤色下線赤色にする
            
             stcolo.Borders(xlEdgeLeft).ColorIndex = 3
             stcolo.Borders(xlEdgeRight).ColorIndex = 3
             stcolo.Borders((xlEdgeBottom)).ColorIndex = 3
            
          ElseIf caler = 6 Then 'ストレート6回目両脇と下線赤色実線にする
             stcolo.Borders(xlEdgeLeft).ColorIndex = 3
             stcolo.Borders(xlEdgeRight).ColorIndex = 3
             stcolo.Borders((xlEdgeBottom)).ColorIndex = 3
             stcolo.Borders((xlEdgeBottom)).Weight = xlThin
          
      
          End If