更新事件后,无法在MS Access中切换标签可见性



我目前有一个更新后事件,该事件在表单中的文本框中循环,如果它们的编号低于某个阈值,则会打开它们的可见性。

Dim i As Long    
        Dim iMin As Long    
        Dim iMax As Long    
        iMin = 1   
        iMax = Me.txtMeasure.Value   
        With Me   
            For i = iMin To iMax   
                              .Controls("V" & i).Visible = True   
            Next i   
        End With

文本框被命名为V1, V2, V3...V110等。"而每个文本框对应的标签被标记为lblV1lblV2lblV3lblV110等。"当更新后事件打开其可见性时,文本框和标签默认为不可见。代码适用于文本框,但不适用于标签。我注意到,当标签看起来不可见时,切换到设计视图,然后返回到表单视图,标签突然变得可见。有没有一种方法可以调试它,使它们同时可见?

试试这个,它在控件中循环,如果它是textboxlabel,你可以用它们做你想做的事情,我在这段代码中将它们设置为Visible

Dim con As Control
Dim i As Long
Dim iMin As Long
Dim iMax As Long
Dim textBoxArr
Dim j As Long
        iMin = 1
        iMax = Me.txtMeasure.Value
     textBoxArr = Array("V1", "V2", "V3", "V4", "V5", "V6", "V7")
    For Each con In Me.Controls    
        If TypeName(con) = "TextBox" Or TypeName(con) = "Label" Then
          For j = 0 To UBound(textBoxArr)
            If con.Name = textBoxArr(j) Or con.Name = "lbl" & textBoxArr(j) Then
                con.Visible = True: Exit For
            End If
          Next j
        End If
    Next con

您只能在代码中添加一行。

        Dim i As Long    
        Dim iMin As Long    
        Dim iMax As Long    
        iMin = 1   
        iMax = Me.txtMeasure.Value   
        With Me   
            For i = iMin To iMax   
                              .Controls("V" & i).Visible = True  
                              .Controls("lbl" & i).Visible = True 
            Next i   
        End With

最新更新