自动选择excel VBA中的复选框

时间:2015-11-24 06:32:21

标签: excel vba checkbox

我维护了一张excel表格,其中A列中列出了特定产品的所有参数,D列再次列出了我需要从A列中所有参数的集合中选择的参数。

是否可以在vba中触发点击事件,它应该在列A和列D之间进行比较,并在找到参数时自动选中复选框。

enter image description here

感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

好的你能做的就是这个:

在C列中放置复选框(确保它们是格式控制复选框)。(确保复选框完全在单元格中)

在Worksheetmodul中发布此内容:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim chk As CheckBox
Dim check As Boolean
Dim rng As Range

For Each chk In ActiveSheet.CheckBoxes

    Set rng = Range("D:D").Find(what:=chk.TopLeftCell.Offset(0, -2).Value, _
    LookIn:=xlValues, _
    lookat:=xlWhole, _
    searchorder:=xlByRows, _
    searchdirection:=xlNext, _
    MatchCase:=False)

    If Not rng Is Nothing Then

        chk.Value = True

    End If

Next chk

End Sub

每次在工作表中更改值时,都会触发子。