Vb.net 使用null在VBA中进行长度检查
我有一些代码用于检查文本框中值的长度,如果任何框没有内容,字符串的长度为0(或null)。代码如下:Vb.net 使用null在VBA中进行长度检查,vb.net,string-length,Vb.net,String Length,我有一些代码用于检查文本框中值的长度,如果任何框没有内容,字符串的长度为0(或null)。代码如下: If (Len(Form_MainScreen.Ctl48.Value) Or Len(Form_MainScreen.Ctl49.Value) Or _ Len(Form_MainScreen.Ctl50.Value) Or Len(Form_MainScreen.Ctl51.Value) Or _ Len(Form_MainScreen.Ctl52.Value) Or Len
If (Len(Form_MainScreen.Ctl48.Value) Or Len(Form_MainScreen.Ctl49.Value) Or _
Len(Form_MainScreen.Ctl50.Value) Or Len(Form_MainScreen.Ctl51.Value) Or _
Len(Form_MainScreen.Ctl52.Value) Or Len(Form_MainScreen.Ctl53.Value) Or _
Len(Form_MainScreen.Ctl54.Value) = 0) Then
Do X
Else
Do Y
End If
当一个字符串为空时,长度检查变为“null”,整个语句也是如此。
但是如果长度检查都不为null,if语句将变为“1”,然后再次执行dox过程
你知道我能做什么吗
谢谢,
Tim您的代码片段对我来说没有多大意义,但是如果您使用的是vb.net,并且如果任何值为null或0长度,您希望执行“X”,那么您可以执行以下操作:
If (String.IsNullOrEmpty(Form_MainScreen.Ctl48.Value) OrElse String.IsNullOrEmpty() OrElse _
String.IsNullOrEmpty(Form_MainScreen.Ctl50.Value) OrElse String.IsNullOrEmpty(Form_MainScreen.Ctl51.Value) OrElse _
String.IsNullOrEmpty(Form_MainScreen.Ctl52.Value) OrElse String.IsNullOrEmpty(Form_MainScreen.Ctl53.Value) OrElse _
String.IsNullOrEmpty(Form_MainScreen.Ctl54.Value)) Then
X()
Else
Y()
End If
使用
String.IsNullOrEmpty
是一个内置函数,可以毫无例外地处理这两种情况。使用OrElse
条件将允许稍快的处理,因为一旦收到有效匹配,它将停止执行条件表达式。简单地使用或需要计算所有条件表达式,即使它不是必需的。您的代码片段对我来说没有多大意义,但是如果您使用的是vb.net,并且希望在任何值为null或长度为0时执行“X”,则可以执行以下操作:
If (String.IsNullOrEmpty(Form_MainScreen.Ctl48.Value) OrElse String.IsNullOrEmpty() OrElse _
String.IsNullOrEmpty(Form_MainScreen.Ctl50.Value) OrElse String.IsNullOrEmpty(Form_MainScreen.Ctl51.Value) OrElse _
String.IsNullOrEmpty(Form_MainScreen.Ctl52.Value) OrElse String.IsNullOrEmpty(Form_MainScreen.Ctl53.Value) OrElse _
String.IsNullOrEmpty(Form_MainScreen.Ctl54.Value)) Then
X()
Else
Y()
End If
If (Len(Form_MainScreen.Ctl48.Value)=0 Or Len(Form_MainScreen.Ctl49.Value)=0 Or _
Len(Form_MainScreen.Ctl50.Value)=0 Or Len(Form_MainScreen.Ctl51.Value)=0 Or _
Len(Form_MainScreen.Ctl52.Value)=0 Or Len(Form_MainScreen.Ctl53.Value)=0 Or _
Len(Form_MainScreen.Ctl54.Value) = 0) Then
Do X
Else
Do Y
End If
使用String.IsNullOrEmpty
是一个内置函数,可以毫无例外地处理这两种情况。使用OrElse
条件将允许稍快的处理,因为一旦收到有效匹配,它将停止执行条件表达式。仅使用或
需要计算所有条件表达式,即使这不是必需的。您使用的是VBA还是VB.NET,请澄清!您使用的是VBA还是VB.NET,请澄清!
If (Len(Form_MainScreen.Ctl48.Value)=0 Or Len(Form_MainScreen.Ctl49.Value)=0 Or _
Len(Form_MainScreen.Ctl50.Value)=0 Or Len(Form_MainScreen.Ctl51.Value)=0 Or _
Len(Form_MainScreen.Ctl52.Value)=0 Or Len(Form_MainScreen.Ctl53.Value)=0 Or _
Len(Form_MainScreen.Ctl54.Value) = 0) Then
Do X
Else
Do Y
End If