Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Trim在VBA和Windows服务(VB.Net)之间有什么区别?_Vba_Vb.net_Trim_Adodb - Fatal编程技术网

Trim在VBA和Windows服务(VB.Net)之间有什么区别?

Trim在VBA和Windows服务(VB.Net)之间有什么区别?,vba,vb.net,trim,adodb,Vba,Vb.net,Trim,Adodb,我目前正在使用多年前已经实现的VBA创建一个Windows服务(VB.Net)。有些代码我不懂,如果有人能让我更容易理解和解释,我会非常感激 strOrderNo=修剪(rs1(“工单”)和“) 这里rs1是一个ADODB记录集,我理解这一部分,但我不明白&“部分做了什么 谢谢大家! 它确保返回的值是字符串而不是数字1&“将返回1”。它将Int更改为字符串。或者只是尝试将null值转换为空字符串。VB.NET中的Trim函数(如果取自Microsoft.VisualBasic“legacy ba

我目前正在使用多年前已经实现的VBA创建一个Windows服务(VB.Net)。有些代码我不懂,如果有人能让我更容易理解和解释,我会非常感激

strOrderNo=修剪(rs1(“工单”)和“)

这里rs1是一个ADODB记录集,我理解这一部分,但我不明白&“部分做了什么


谢谢大家!

它确保返回的值是字符串而不是数字
1&“
将返回
1”
。它将Int更改为字符串。或者只是尝试将null值转换为空字符串。VB.NET中的
Trim
函数(如果取自Microsoft.VisualBasic“legacy back compat”命名空间)没有区别。它从字符串中去掉前导空格和尾随空格,仅此而已
&
是字符串concat运算符,用于连接两个字符串;在这里,它似乎被用作Access'
Nz
函数的惰性替代品,因为将空字符串连接到
NULL
将生成空字符串,如果
strOrderNo
被声明为字符串,这可能会防止类型不匹配错误,正如它的匈牙利符号前缀所示。@MathieuGuindon既然你提到了Access Nz函数,我就用谷歌搜索它。我还发现这段代码作为一个单独的模块添加到VBA中。那对我来说像是新西兰的功能,你觉得呢?感谢代码==>函数FXA(str1,可选allownull为Boolean=False)作为字符串str1=IIf(IsNull(str1),“”,RTrim(str1))FXA=Replace(str1,“,””),如果Trim(FXA)=”和allownull=True,那么FXA=“Null”Else FXA=“”&FXA&“”,如果End函数看起来像它,则结束。除了
IIf
是一个函数之外,VBA在调用它之前必须计算它的所有参数,这意味着
RTrim(str1)
实际上正在进行它试图阻止的隐式转换,由于对
RTrim
实现的意外假设,如果将
str1
命名为
unverifiedInput
,则会突出该假设;最好将
IIf
扩展为适当的
If…然后…Else…结束If
block IMO。