Vba 如果特定单元格包含特定输入,则标记复选框

Vba to mark Check Box if specific cells contains specific imput

我需要创建复选框,仅当另一个特定单元格包含特定输入时才选中,如果此输入不存在则取消选中,请注意我尝试了以下代码

Private Sub Worksheet_Ca()

Dim DestS As Worksheet
Set DestS = ThisWorkbook.Worksheets("rest")

Dim DestSh As Range
Set DestSh = DestS.Range("B2")

If DestSh.Value = "Device" Then
DestS.CheckBoxes("Reset").Value = xlOn
Else
DestS.CheckBoxes("Reset").Value = xlOff
End If
End Sub

此外,我使用的复选框是表单工具栏的一部分,而不是 activeX,我将复选框的名称更改为 'reset'

我使用调试时遇到的错误是 对象 _worksheet 的复选框方法失败

请复制工作中的下一个事件代码sheet“休息”代码模块:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Target, Range("B2")) Is Nothing Then
    If Target.value = "Device" Then
        CheckBoxes("Reset").value = True
    Else
        CheckBoxes("Reset").value = False
    End If
  End If
End Sub

当您更改“设备”中的“B2”单元格值时,复选框将被选中。如果您在其他地方更改它的值,复选框将被取消选中...

为了复制 sheet 模块中的代码,请激活 sheet “rest” 执行右键单击 sheet 名称,选择 View Code 并复制window 中的上述代码打开...