Zawsze możesz zaktualizować dołączoną przed chwilą tabelę, aby zawierała klucz indeksowy/podstawowy. Coś jak,
Dim s As String
s = "ODBC;DSN=mydb;Trusted_Connection=Yes;DATABASE=mydb;"
Dim td As TableDef
Set td = CurrentDb.CreateTableDef("vwMyView", 0, "MySchema.vwMyView", s)
CurrentDb.TableDefs.Append td
CurrentDb.Execute "CREATE UNIQUE INDEX SomeIndex ON vwMyView (PrimaryKeyColumn) WITH PRIMARY".
CurrentDb.TableDefs.Refresh
Set td = Nothing
Nie jestem pewien, czy musisz odświeżyć CurrentDB przed utworzeniem indeksu. Spróbuj odświeżyć bez uprzedniego działania, jeśli to nie działa - odśwież, a następnie Wykonaj instrukcję CREATE.