【问题标题】:Multiple checkboxes show multiple colors VBA多个复选框显示多种颜色VBA
【发布时间】:2018-02-07 04:31:45
【问题描述】:

下面的代码显示了 vba 中的三个复选框,每个复选框(如果选中)在我的工作簿黄色中突出显示特定的单元格背景。是否有可能如果选中一个复选框,则背景将为黄色,如果选中两个,则为橙色,如果选中三个,则为红色。此外,如果未选择任何内容,则不会填充背景。到目前为止,我没有填充和黄色部分,但我不知道如何添加其他两种颜色。有什么帮助,谢谢。

Sub CheckBox25_Click()
    With ActiveSheet.CheckBoxes("Check Box 25")
        If .Value = xlOn Then
            Worksheets("Sheet1").Range("C18").Interior.ColorIndex = 27
        Else: Worksheets("Sheet1").Range("C18").Interior.ColorIndex = 0
        End If
    End With
End Sub

Sub CheckBox26_Click()
    With ActiveSheet.CheckBoxes("Check Box 26")
        If .Value = xlOn Then
            Worksheets("Sheet1").Range("C18").Interior.ColorIndex = 27
        Else: Worksheets("Sheet1").Range("C18").Interior.ColorIndex = 0
        End If
    End With
End Sub

Sub CheckBox27_Click()
    With ActiveSheet.CheckBoxes("Check Box 27")
        If .Value = xlOn Then
            Worksheets("Sheet1").Range("C18").Interior.ColorIndex = 27
        Else: Worksheets("Sheet1").Range("C18").Interior.ColorIndex = 0
        End If
    End With
End Sub

【问题讨论】:

    标签: vba excel


    【解决方案1】:

    把这个和上面的代码放在同一个模块中:

    Sub colorCell()
    Dim CB25 As Long
    Dim CB26 As Long
    Dim CB27 As Long
    
    CB25 = (ActiveSheet.CheckBoxes("Check Box 25").Value = xlOn) * -1
    CB26 = (ActiveSheet.CheckBoxes("Check Box 26").Value = xlOn) * -1
    CB27 = (ActiveSheet.CheckBoxes("Check Box 27").Value = xlOn) * -1
    
    With Worksheets("Sheet1").Range("C18").Interior
        Select Case CB25 + CB26 + CB27
            Case 1
                .ColorIndex = 27
            Case 2
                .ColorIndex = 27 'Change to your color
            Case 3
                .ColorIndex = 27 'Change to your color
            Case Else
                .ColorIndex = 0
        End Select
    End With
    
    End Sub
    

    然后在每个事件中都变成这样:

    Sub CheckBox25_Click()
        colorCell
    End Sub
    

    现在,每次更改时,它都会进行计数并相应地更改颜色。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-25
      • 1970-01-01
      • 1970-01-01
      • 2020-05-15
      • 2012-05-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多