Sbagliato...
E' sempre possibile fare tutto... in questo caso basta intercettare l'errore e gestirlo:
Private Sub Form_Error(DataErr As Integer, Response As Integer)
Const errDuplicateKey = 3022
Select Case DataErr
Case Is = errDuplicateKey
Response = acDataErrContinue
MsgBox "QUESTO E' IL MESSAGGIO PERSONALIZZATO DI CHIAVE DUPLICATA"
Case Else
Response = acDataErrDisplay
End Seelct
End Sub
P.S. non riaprire 3D così vecchi sono decisamente inutili.
Saluti