excel - 为什么我的选项按钮没有切换组合框文本?
问题描述
我有两个选项按钮,允许用户通过它的 # 或它的名称搜索工作。
因此,如果您单击左侧的 opt 按钮,它将显示为:
然后反之亦然:
然后我添加了这个来填充列表:
Sub Search_Reqs_Cmb_IM()
Dim rWs As Worksheet: Set rWs = ThisWorkbook.Worksheets("Approved Roles")
If UserForm2.optSearchReq.Value = True Then 'search by job #
For x = 2 To rWs.Cells(Rows.Count, 2).End(xlUp).row
UserForm2.cmbReqNum.AddItem rWs.Cells(x, 2) & " - " & rWs.Cells(x, 13)
Next x
ElseIf UserForm2.optSearchJob.Value = True Then 'search by job name
For x = 2 To rWs.Cells(Rows.Count, 2).End(xlUp).row
UserForm2.cmbReqNum.AddItem rWs.Cells(x, 13) & " - " & rWs.Cells(x, 2)
Next x
End If
End Sub
然后在每次单击按钮时查看每个选项按钮的代码call Search_Reqs_Cmb_IM
。
因此,当我单击任何一个时,无论我是否在两个选项按钮之间切换,它都会始终填充。如果我单击该选择按钮,我希望它切换到job name - job number
,反之亦然。我怎样才能确保它会在两种格式之间切换?
解决方案
您需要先致电.Clear
,.AddItem
否则每次选择该选项时您的列表都会增加。
Sub Search_Reqs_Cmb_IM()
Dim rWs As Worksheet: Set rWs = ThisWorkbook.Worksheets("Approved Roles")
If UserForm2.optSearchReq.Value = True Then 'search by job #
UserForm2.cmbReqNum.Clear
For x = 2 To rWs.Cells(Rows.Count, 2).End(xlUp).Row
UserForm2.cmbReqNum.AddItem rWs.Cells(x, 2) & " - " & rWs.Cells(x, 13)
Next x
ElseIf UserForm2.optSearchJob.Value = True Then 'search by job name
UserForm2.cmbReqNum.Clear
For x = 2 To rWs.Cells(Rows.Count, 2).End(xlUp).Row
UserForm2.cmbReqNum.AddItem rWs.Cells(x, 13) & " - " & rWs.Cells(x, 2)
Next x
End If
End Sub
推荐阅读
- javascript - Mongo 将多个文档聚合为一个
- azure-data-explorer - Kusto:如何将表值转换为标量并从用户定义的函数返回
- angular - ERROR ReferenceError: M is not defined //Materialize//
- debugging - nexti gdb 和 _GetStdHandle@4 完成程序
- javascript - window.addEventListener('beforeunload' 在 chrome 中不起作用
- python - 对于 int __pow__ int 的 python 类型提示,如何修复 mypy 错误“Expression has type Any [misc]”?
- ios - 成功后如何进行多个网络调用并一起发送结果?
- php - 为 wordpress 自定义帖子类型添加两个不同的后缀
- angular - Angular 缺少依赖项
- amazon-web-services - 无法在 AWS Cloud 9 上创建环境