1
我正在尝试为Microsoft Access创建一个VBA脚本,该名称从名称字段中抽取标题(如Mr.,Mrs.,Dr.等),然后返回一个清晰的特定版本的标题。我试图制作一个多维数组,其中一列中的标题和另一列中的已清理标题,但是当我尝试编译脚本时,出现语法错误。我知道语法错误是由于多维数组,因为我基于此前的脚本,以前的脚本只是找到旧的标题,它运行良好。 我错过了什么导致这是一个语法错误?我没有正确调用多维数组吗?无可否认,我是VBA脚本的新手,在编程时会生锈,所以如果我错过简单的东西,请原谅我。尝试在VBA中创建多维数组时出现语法错误
Public Function findTitles(inName) As String
' Returns cleaned up titles
Dim strName As String
Dim strTitle As String
Dim Titles As Variant
Titles = Array(Array("Ms", "Ms."), Array("Miss ", "Miss"), Array("Mrs", "Mrs."), Array("Mr", "Mr."), Array("Master", "Master"), Array("Rev", "Rev."), Array("Reverend", "Reverend"), Array("Fr", "Fr."),Array("Father", "Father"), Array("Dr", "Dr."), Array("Doctor", "Doctor"), Array("Atty", "Atty."), Array("Attorney", "Attorney"),Array("Prof", "Prof."), Array("Professor", "Professor"), Array("Hon", "Hon."), Array("Honorable", "Honorable"), Array("Pres", "Pres."), Array("President", "President"), Array("Gov", "Gov."), Array("Governor", "Governor"))
Dim I
I = 0
strTitle = ""
'Compare input to list of Titles
Do
If inName Like Titles(I, 0) & " *" Then
strTitle = Titles(I, 1)
Else
I = I + 1
End If
Loop While (strTitle = "" And I < UBound(Titles))
cleanTitles = strTitle
End Function
谢谢。你是正确的,数组声明是错误的。 – TKESuperDave 2014-10-01 21:07:14