我最近将40多个excel文件导入Access,但现在我想为每个文件添加一个PK。
我有以下代码,但它没有超过db.execute行,我在CREATE INDEX语句中不断收到错误3291语法错误。它看起来不错,但不确定为什么会发生这种情况?
Public Sub AddPrimaryKey()
Dim db As DAO.Database
Dim td As DAO.TableDef
Set db = CurrentDb()
For Each td In db.TableDefs
If Left(td.Name, 6) = "REPORT" Then
db.Execute "CREATE INDEX Employee No ON td.Name (Employee No) WITH PRIMARY"
End If
Next td
End Sub
答案 0 :(得分:1)
似乎字段名称包含空格,因此将其括起来。
将td.Name
的值添加到字符串中。
db.Execute "CREATE INDEX [Employee No] ON " & td.Name & _
" ([Employee No]) WITH PRIMARY"