Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 重置表单,但将单个字段设置为特定值_Excel_Vba - Fatal编程技术网

Excel 重置表单,但将单个字段设置为特定值

Excel 重置表单,但将单个字段设置为特定值,excel,vba,Excel,Vba,我创建了一个重置按钮,该按钮当前可清除我创建的整个VBA表单。但是,我希望它清除整个表单,并将名为cbo_deptCode的下拉列表的值设置为“协同计算机科学”。我将如何着手实现这一点 这是我目前的代码: Private Sub btn_Reset_Click() ' Reset form Dim ctl As MSForms.Control For Each ctl In Me.Controls Select Case TypeName(ctl)

我创建了一个重置按钮,该按钮当前可清除我创建的整个VBA表单。但是,我希望它清除整个表单,并将名为cbo_deptCode的下拉列表的值设置为“协同计算机科学”。我将如何着手实现这一点

这是我目前的代码:

Private Sub btn_Reset_Click()

    ' Reset form
    Dim ctl As MSForms.Control
    For Each ctl In Me.Controls
        Select Case TypeName(ctl)
            Case "TextBox"
                ctl.Text = ""
            Case "CheckBox", "OptionButton", "ToggleButton"
                ctl.Value = False
            Case "ComboBox", "ListBox"
                ctl.ListIndex = -1
        End Select
    Next ctl

End Sub
为什么不加上:

cbo_deptCode.Value = "CO - Computer Science"

在你的循环之后?

我输入了
cbo\u deptCode=“CO-Computer Science”
,现在它可以工作了。谢谢你给我指出了正确的方向。组合框的具体属性是什么?您是否将MatchEntry设置为true,如果是,该文本是否在列表中?您是否将其设置为仅列表模式?更改事件中是否有可能触发的代码?列表中提供了文本。MatchEntry设置为true,并设置为ListOnly模式。啊,对了,所以
CO-Computer Sci
不在列表中,但
CO-Computer Science
在列表中
cbo\u deptCode.Value=“CO-Computer Science”
在这种情况下应该可以工作。感谢您的帮助!我仍在努力学习VBA