如何检查“所有”文本框是否为空(不是单个文本框)

时间:2014-04-21 07:59:27

标签: vba loops excel-vba foreach excel

我在MS.Excel(VBA)中有两个多页的表格。两个乘法上都有多个文本框。第二页上的文本框都以" txtM"开头。加上一个递增的数字(txtM1,txtM2等)。 On" Save"我只想记住用户是否第二个多页(索引= 1)上的所有文本框都是空的。如果其中一些是空的但完整的一组emtpy文本框表明,用户只是忘记点击第二个"标签"多重。

我已经尝试了一些东西(见下文)但到目前为止还没有找到合适的解决方案。

For Each crtl In Me.Controls
    If crtl.Name Like "txtM*" Then
        If crtl.Value = "" Then
            MsgBox "dont forget .... blablabla"
                Me.MultiPage1.Value = 1
            Exit Sub
        End If
    End If
Next

thx&问候, zoidie

1 个答案:

答案 0 :(得分:1)

我会做这样的事情:

Dim allEmpty As Boolean
allEmpty = True

For Each crtl In Me.Controls
    If crtl.Name Like "txtM*" Then
        If Trim(crtl.Value) <> "" Then
            allEmpty = False
            Exit For
        End If
    End If
Next

If allEmpty Then
    MsgBox "dont forget .... blablabla"
    Me.MultiPage1.Value = 1
    Exit Sub
End If
相关问题