【问题标题】:How to change visibility of a combo box based on another combo box value in VBA如何根据 VBA 中的另一个组合框值更改组合框的可见性
【发布时间】:2021-11-11 23:18:30
【问题描述】:

我目前正在使用 Microsoft Access。

我正在尝试根据另一个组合框值填充多个组合框。例如,第一个组合框称为 cmb_BoxValue,其编号为 1-20,其余组合框的名称为 cmb_Box1,直到 cmb_Box20。一旦用户选择了所需的组合框的数量,使用 AfterUpdate 子它将允许可见性 = True 基于该值。如果选择的值为 3,则 cmb_Box1、cmb_Box2 和 cmb_Box3 可见 = True。我设法使用如下选择案例来做到这一点:

Private Sub cmb_BoxValue_AfterUpdate()
 Dim Size1 As Integer
 Size1 = Me.cmb_BoxValue.Value

 Select Case Me.cmb_BoxValue
  Case 1
  Me.cmb_boxBox1 = True
  etc...

但我觉得这是非常重复的,并不是最理想的解决方案。我觉得 for 循环是理想的解决方案,但我不知道如何处理它。谢谢

【问题讨论】:

标签: vba ms-access


【解决方案1】:

由于组合框具有相似的数字后缀名称,因此可以在递增索引循环中动态构建组合框名称,并测试索引是否为

For x = 1 to 20
    Me.Controls("cmb_Box" & x).Visible = x <= Me.cmb_BoxValue
Next

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    相关资源
    最近更新 更多