Я пытаюсь создать сценарий VBA для Microsoft Access, который вытаскивает заголовки (такие как г-н, г-жа, д-р и т. Д.) Из поля имени, а затем возвращает очищенная конкретная версия этого названия. Я попытался сделать многомерный массив с заголовком в одном столбце и очищенным заголовком в другом столбце, но когда я пытаюсь скомпилировать скрипт, я получаю синтаксическую ошибку. Я знаю, что синтаксическая ошибка связана с многомерным массивом, поскольку я основывал это на предыдущем скрипте, который раньше просто находил старые заголовки, и он работал нормально. Что мне не хватает, что является причиной синтаксической ошибки? Не правильно ли я назвал многомерный массив? По общему признанию, я новичок в сценариях 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