Pročitao sam danas ovaj post i nisam hteo da odgovorim pomalo iz razloga što je problem rešen, pomalo što nisam mogao da se setim po meni idelanog rešenja dok mi nije upravo zatrebalo. Lepa stvar kod foruma je što mogu da ti koriste kao podsetnik

Jedna metoda koju koristim zbog toga što je kod kratak je CurrentDb.Execute StrSQL, ova metoda ne zavisi od toga da li je SetWarnings on ili off. Postoji još jedno rešenje, koje je po meni najbolje, CurrentProject.Connection.Execute StrSQL :
Ovo rešenje sam implementirao u primeru koji najpre snima sve relacije u tabelu, zatim ih briše, a zatim posle neke radnje ih rekreira koristeći tu privremenu tabelu. CurrentDb.Execute StrSQL mi je u poslednjem redu prijavljivao Error, ali kada sam izmenio način exekucije sve je proradilo super. U slučaju da se pojavi greška ispisuje se opis greške, ali se kod neometano nastavlja. Nisam hteo da spajam procedure SaveRel i ExpRel zato što u slučaju da se pojavi greška prilikom rekreiranja tabela relacije bi bile izgubljene.
Public Sub SaveRel()
StrSQL = "SELECT MSysRelationships.* INTO TempRel FROM MSysRelationships;
CurrentDb.Execute StrSQL
End Sub
Public Sub ExpRel()
On Error Resume Next
Dim RS As Recordset
Dim RC As Integer
For RC = CurrentDb.Relations.Count - 1 To 0 Step -1
If Left(CurrentDb.Relations(RC).Name, 4) <> "MSys" Then CurrentDb.Relations.Delete CurrentDb.Relations(RC).Name
If Err.Description <> "" Then Debug.Print Err.Description
Err.Description = ""
Next RC
' OVDE DOLAZI KOD KOJI SE NE MOŽE IZVRŠITI KADA POSTOJE RELACIJE, KAO ŠTO JE NA PRIMER PROMENA PRIMARNOG KLJUČA
StrSQL = "Select TempRel.* From TempRel"
Set RS = CurrentDb.OpenRecordset(StrSQL)
If RS.RecordCount > 0 Then
RS.MoveLast
RS.MoveFirst
End If
For RC = 1 To RS.RecordCount
StrSQL = "ALTER TABLE " & RS!szObject & " ADD CONSTRAINT " & Left(RS!szObject, 4) & Left(RS!szReferencedObject, 4) & _
" FOREIGN KEY (" & RS!szColumn & ") REFERENCES " & RS!szReferencedObject & "(" & RS!szReferencedColumn & ") " & _
"ON UPDATE CASCADE ON DELETE CASCADE "
If Err.Description <> "" Then Debug.Print StrSQL, Err.Description
Err.Description = ""
CurrentProject.Connection.Execute StrSQL
RS.MoveNext
Next RC
End Sub
Toliko od mene, ubio sam par minuta, još ako će ovo pomoći nekome onda još bolje
Ozbiljan i odgovoran mladić