2016-12-09 8 views
0

* T_0_Date(1-20)という名前の20個のテキストボックスがありますが、ユーザーは自由にテキストを入力できますが、スクリプトの残りの部分を実行できるようにするには、日付として日付を検証する必要があります。たとえば09-Dec-16が期待されるエントリで、ユーザがWaffleを入力した場合、それを捕まえるためのスクリプトが必要です。私は同じコードを20回書くことができますが、それは醜いように見えます。だから、これをループで達成しようとしているだけです。ループを使用してExcelユーザーフォームのエントリを検証しますか?

最初の投稿ですので、事前に間違いをお詫び申し上げます。 私は、日付として検証する必要がある20のフィールドを持つユーザーフォームを構築しています。私はコードを醜いから保つためにこれを達成するためにループを使用する方法を見つけることを試みています。私は試していた:

For q = 1 To 20 
tb9 = T_0_DATE(q).Value 
If Err And tb9 <> 0 Then MsgBox "Error Message" 
Next q 

助けていただければ幸いです。

ありがとう!!!!

+1

あなたのデータのサンプルを与え、あなたの質問を言い換えてみてください。検証する必要があるのは何ですか? – Moacir

+0

@ Moacirポストが更新されました –

+0

[Validate for Userformがループを使用して空のコントロールをチェックする可能性があります](http://stackoverflow.com/questions/20370769/validation-for-user-to-check-for-empty-controls) -using-loops)などがあります。 – Comintern

答えて

1
 Dim cCont As Control 

     For Each cCont In Me.Controls 
      If TypeName(cCont) = "TextBox" Then 
       'more checks and other code 
      End If 
     Next cCont 

これは、ユーザーフォームでコントロールをループする方法です。あなたは大歓迎です:)

関連する問題