如何根据vba中的条件/文本更改启用/禁用按钮?

时间:2016-09-19 10:56:12

标签: excel vba excel-vba

我正在自动化一些帐户详细信息,我不希望他们添加双倍。 为此,我需要将按钮单击事件限制为一次,以便它们不会被添加两次或三次。 如何限制按钮单击事件,否则如果我更改任何数量,我想要按钮返回更新。 对此有任何帮助。

 commandbutton1.enable = true
 commandbutton1.enable = false

这是有效的,但是当我的帐户值在单元格中发生变化时,我想要回按钮。

1 个答案:

答案 0 :(得分:1)

您可以使用Worksheet_Change事件重新启用按钮

Private Sub Worksheet_Change(ByVal Target As Range)
commandbutton1.Enabled = True
End Sub

如果您只想在更改某个单元格时启用该按钮,请执行以下操作:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then 'Adjust this Cell Address
    commandbutton1.Enabled = True
End If
End Sub

如果要检查多个单元格,可以这样做:

Dim testRange As Range

Set testRange = Range("A1,B3:B10,D5")

If Not Intersect(Target, testRange) Is Nothing Then

    'Do something
    Debug.Print "Target Cell in testRange"
End If

检查更改的Cell是否在某一行中:

If Target.Row = 2 Then

对于列:

If Target.Column = 1 Then