2016-07-26 134 views
0

我已經創建了一個用戶窗體,其中需要一些字段。他們的名字以「R」結尾,以便識別。但是,我無法弄清楚如何計算由布爾字段標記的空白字段的數量。如果「真」標誌的數量大於0,我想顯示一條錯誤消息。計數布爾運算符

For Each ctl In NewAsset.Controls 
If Right(ctl.Name, 1) = "R" Then 
    If ctl.Value = "" Then 
     flag = True 
    End If 

    If ctl.Value <> "" Then 
     flag = False 
    End If 
End If 
Next 
+0

你並不需要統計trues的數量。如果有任何ctl.Value =「」則拋出一個消息框並退出子。一旦空白,你可以完成檢查。 – sous2817

+0

@ sous2817 - 這是糟糕的用戶體驗 - 從用戶的角度來看,同時知道所有的驗證錯誤要容易得多。 – Comintern

+0

@Comintern當然,但不是讓用戶提交表單直到必填字段完成爲止更好嗎?許多方法來剝皮這隻貓,我只給了一個選擇。 – sous2817

回答

0
Dim n As Long 
For Each ctl In NewAsset.Controls 
    If Right(ctl.Name, 1) = "R" And ctl.Value = "" Then 
     n = n + 1 
    End If 
Next 
If n > 0 Then MsgBox n & " required fields are not filled!" 
+0

我用另一個如果然後而不是和聲明,然後它完美的工作!謝謝! – EmsBish