Excel 如果更改了一个组合框,请重置另一个组合框
我在一张纸上有两个activeX组合框:一个用于月份,一个用于季度。Excel 如果更改了一个组合框,请重置另一个组合框,excel,vba,Excel,Vba,我在一张纸上有两个activeX组合框:一个用于月份,一个用于季度。 “月份”组合框包含一个“--”选项,表示未选择任何月份。 我还在四分之一组合框中使用“---”字符 如果用户选择的是月份,而不是“--”,则季度框将重置为“--”。 类似地,如果用户选择一个季度,月组合框应该重置为“--” 工作表中的我的代码(“shDashboard”是工作表的代码名。框名为Quarter_Combo和Month_Combo。): Private Sub-Month\u Combo\u Change() Ms
“月份”组合框包含一个“--”选项,表示未选择任何月份。
我还在四分之一组合框中使用“---”字符 如果用户选择的是月份,而不是“--”,则季度框将重置为“--”。
类似地,如果用户选择一个季度,月组合框应该重置为“--” 工作表中的我的代码(“shDashboard”是工作表的代码名。框名为Quarter_Combo和Month_Combo。):
Private Sub-Month\u Combo\u Change()
MsgBox“月份组合”
shDashboard.Quarter_Combo.Value=“-”
端接头
私有子季度组合更改()
MsgBox“四分之一组合”
shDashboard.Month\u Combo.Value=shDashboard.Month\u Combo.List(0)
端接头
消息框用于帮助进行故障排除。当我更改月份时,它会更新季度组合框,而季度组合框又会更新月份组合框。
结果是两个框都显示“--”
我尝试了
Application.EnableEvents=False
应用程序。在这种情况下,EnableEvents
不起作用。这里有一个解决办法
Private pbDisableComboEvents As Boolean
Private Sub Month_Combo_Change()
If Not pbDisableComboEvents Then
MsgBox "Month_Combo"
pbDisableComboEvents = True
Me.Quarter_Combo.Value = "-"
pbDisableComboEvents = False
End If
End Sub
Private Sub Quarter_Combo_Change()
If Not pbDisableComboEvents Then
MsgBox "Quarter_Combo"
pbDisableComboEvents = True
Me.Month_Combo.Value = "-"
pbDisableComboEvents = False
End If
End Sub
工作起来很有魅力!谢谢你的帮助!