根据某些条件激活表单按钮

时间:2016-11-17 16:44:51

标签: excel vba excel-vba

我正在使用带有两个组合框和一个按钮的表单。我希望最初禁用按钮,并且只有当用户在两个组合框中选择有效值时才应启用该按钮。

我尝试使用表单初始化子例程禁用该按钮,但该按钮似乎处于活动状态。可能是什么问题?还有如何使用条件启用按钮?

Private Sub UserForm1_Initialize()

    Me.Shapes("ButtonName1").ControlFormat.Enabled = False
    ActiveSheet.Shapes("ButtonName1").Font.ColorIndex = 16

End Sub

1 个答案:

答案 0 :(得分:1)

你在代码中犯了几个错误。

  • r = ['H', '2', 'O'] replacements = [(index, int(ch)) for index, ch in enumerate(r) if ch.isdigit()] for postion, times in replacements: r[postion] = (times - 1) * r[postion - 1] # flaten the result r = [ch for s in r for ch in s] print(r) # ['H', 'H', 'O'] 应为UserForm1_Initialize
  • 您可以使用UserForm_Initialize访问按钮的属性
  • 使用Userform.ButtonName1访问工作表上按钮上的文字

<小时/> 下面的代码应该起作用

TextFrame.Characters.Font.ColorIndex