Я новичок в VBA, поэтому у меня есть базовые представления об этом, и в настоящее время у меня возникают проблемы при запуске следующего кода:
Sub arrayData()
Dim custnames() As Variant
Dim num As Integer, dbs As Database, InsertRecord As String
Dim CustId As Integer, num1 As Integer
Dim CustName As String
Set dbs = CurrentDb()
CustId = 0
For num1 = 0 To 30000
CustId = CustId + 1
custnames = Array("Michael", "Larry", "Jeff", "Liam", "Gavin", "Ron", "Trevor", "Lester", "Leon", "Garry")
num = Int((30000 - 0 + 1) * Rnd + 0)
CustName = custnames(num)
InsertRecord = "insert into CUSTOMER (Cust_No, Cust_Name) values (" & "'" & CustId & "'" & "," & "'" & CustName & "'" & ")"
dbs.Execute InsertRecord
Debug.Print CustId; CustName
Next
End Sub
Когда я нажимаю кнопку run, появляется сообщение об ошибке «Run-time error 9»: индекс выходит за пределы диапазона, и отладка выделяется CustName = custnames(num)
. Цель этого кода - заполнить таблицу с 30 000 записей.