我环顾四周,发现“运行时错误9下标超出范围”错误通常与数组有关。但是,我不确定如何解释我发现的最适合我的代码的答案。
我写了一个简单的函数,将一个名字和姓氏从一个字段中提取出来,然后我发现该字段中包含几个Null,并尝试通过从String变为Variant decleration进行补偿。
我已经用类似的代码使它正常工作了...但是没有这段代码。
我的代码如下:
Function FLastName(ByVal lnIn As Variant) As Variant
Dim astrFullName() As String
If IsNull(lnIn) Then
FLastName = Null
Else
ReDim astrFullName(2) 'This is a new concept to me... not sure if I really need this
astrFullName = Split(lnIn, ",")
FLastName = astrFullName(0)
End If
End Function
在此先感谢您的见解和帮助。
编辑:我发现问题是该数组不喜欢某些名称字段中的Null值...我认为以下行将解决此问题:
If IsNull(lnIn) Then
FLastName = Null
但是显然我错了。
有人对我到目前为止发现的内容有什么建议吗?
我找到了答案!
艾伦·布朗(Allen Browne)(非常出色)在他的网站上提供了“ ParseWord”功能,该功能可以帮助我完成所需的工作。
可以在这里找到:http : //allenbrowne.com/func-10.html
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句