如果背景颜色为黑色,excel会阻止用户访问单元格

时间:2015-03-13 14:27:05

标签: excel vba 2d-games

我正在尝试在excel 2003中构建一个简单的游戏(迷宫)。我需要一个宏来阻止用户选择一个单元格(使用箭头键),如果它们有黑色背景颜色。

我似乎无法阻止这种情况发生(无论颜色如何)。

任何提示或帮助都会很棒。

感谢。

汤姆

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim x As Integer
Dim y As String
Dim z As Integer
Dim answer As Integer
Dim OldRange As Range



x = Range("AL4").Value
y = Range("AL5").Value
z = Range("AL6").Value
accessory = Range("AL7").Value

'ColorIndex 1 is Black
If Target.Cells(1, 1).Interior.ColorIndex = 1 Then
    OldRange.Select
Else
    Set OldRange = Target
End If

我试过这个:我对我错在哪里感到困惑! 在ThisWorkbook中,我在最顶层添加了:     选项明确     私人OldRange作为范围

然后我将以下内容添加到我的Private Sub Worksheet_SelectionChange(ByVal Target As Range)区域:

If Target.Cells(1, 1).Interior.ColorIndex = 1 Then
    OldRange.Select
Else
    Set OldRange = Target
End If

我仍然在OldRange.Select行上收到Debug错误。

更新 我很慢!抱歉! 现在非常感谢。

感谢。

汤姆

1 个答案:

答案 0 :(得分:0)

以下是您的解决方案(在工作表代码块中输入此代码):

Private OldRange As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'ColorIndex 1 is Black
    If Target.Cells(1, 1).Interior.ColorIndex = 1 Then
        OldRange.Select
    Else
        Set OldRange = Target
    End If
End Sub