Public Function 入力漏れ() As Boolean
Dim myCtrl As Control
For Each myCtrl In Screen.ActiveForm.Controls
If myCtrl.Name Like "txt*" Then
If IsNull(myCtrl.Value) Then
MsgBox "入力必須項目に入力漏れがあります"
入力漏れ = True
Exit Function
End If
End If
Next
入力漏れ = False
End Function
https://zawazawa.jp/ms-access/topic/621
このURLで、ご教示していただきました。
Nullは防止できます。
このコードに空白も、反応するようにしたいのです。
対象のテキストボックスは、FORMを読み込んだ時は、Nullです。
そのテキストボックスに、入力して、訂正した場合、そのテキストボックスは、Nullでなくなります。
Debug.Printで判定したら、0が返ってきました。
Public Function 入力漏れ() As Boolean
Dim myCtrl As Control
For Each myCtrl In Screen.ActiveForm.Controls
If myCtrl.Name Like "txt*" Then
If IsNull(myCtrl.Value) Then
If Len(myCtrl.Value=0) Then
MsgBox "入力必須項目に入力漏れがあります"
入力漏れ = True
Exit Function
End If
End If
Next
入力漏れ = False
End Function
このようにしましたが、空白には反応しません。
Isemptyなどためしたのですが、上手くできません。
お手数ですが、Nullまたは、空白の時、反応するコードを、ご教示お願いします。
よろしくお願いします。
コードをコピペしてデバッグ→コンパイルをしたらエラーになりました
それは実際に使っているコードですか?
回答ありがとうございます。
実際に利用しています。
「Null または、空白の時、反応するコード」ということなので、Or条件になります。
あるいは、Nz関数を使うと Null を適切に変換してくれますので、下記でもOKです。
ありがとうございました。
できました。