Excel VBA - 制作棋盘

时间:2017-11-29 19:23:23

标签: vba excel-vba excel

我正在尝试使用黑白颜色从我所在的任何一个单元格开始制作一个10 * 10的棋盘。尝试过以下代码但需要进一步的帮助。有人可以帮我运行所需的更改。

Sub COLOR()

Dim I As Long
Dim J As Long

For I = 1 To 10
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .PatternTintAndShade = 0

    For J = 1 To 10
        ActiveCell.Offset(1, 0).Range("A1").Select
        With Selection.Interior
            .Pattern = xlSolid
            .PatternColorIndex = xlAutomatic
            .ThemeColor = xlThemeColorDark1
            .TintAndShade = 0
            .PatternTintAndShade = 0
    Next J
Next I

End Sub

1 个答案:

答案 0 :(得分:1)

我永远不会记得哪个角落有深色,棋盘上有浅色,但是,如果以下代码将其恢复到前面,只需将If (I + J) Mod 2 = 0 Then更改为If (I + J) Mod 2 <> 0 Then:< / p>

Sub COLOR()

    Dim origin As Range
    Set origin = ActiveCell

    Dim I As Long
    Dim J As Long

    For I = 0 To 9
        For J = 0 To 9
            With origin.Offset(I, J).Interior
                .Pattern = xlSolid
                .PatternColorIndex = xlAutomatic

                If (I + J) Mod 2 = 0 Then
                    .ThemeColor = xlThemeColorLight1
                Else
                    .ThemeColor = xlThemeColorDark1
                End If

                .TintAndShade = 0
                .PatternTintAndShade = 0
            End With
        Next J
    Next I

End Sub