Puedes ponerle este código en el evento "Antes de actualizar" del cuadro de texto:
Private Sub Texto17_BeforeUpdate(Cancel as Integer)
If Isnull(Me.Texto17) Or Nz(Me.texto17,"")="" Then
MsgBox "El campo no puede estar vacío",vbOkOnly+vbCritical,"ERROR"
Cancel=True
End If
O este otro, en el evento "Después de actualizar":
Private Sub Texto17_AfterUpdate()
If Isnull(Me.Texto17) Or Nz(Me.texto17,"")="" Then
MsgBox "El campo no puede estar vacío",vbOkOnly+vbCritical,"ERROR"
Me.Otrocampo.SetFocus
Me.Texto17=""
Me.Texto17.SetFocus
End If
donde Otrocampo será el nombre de otro cuadro de texto... de tu formulario.
En ambos casos implica que se ha de pasar por el cuadro de texto e introducir en él algún valor (aunque luego se borre)
Otra opción sería poner este otro en el evento "Al perder el enfoque":
Private Sub Texto17_LostFocus()
If Isnull(Me.Texto17) Or Nz(Me.texto17,"")="" Then
MsgBox "El campo no puede estar vacío",vbOkOnly+vbCritical,"ERROR"
Me.Otrocampo.SetFocus
Me.Texto17.SetFocus
End If
Pero implica que tengas que colocarte en algún momento en el cuadro de texto.
Por último, puedes hacer también la validación en el botón de guardar:
Private Sub cmdGuardar_Click()
If Isnull(Me.Texto17) Or Nz(Me.texto17,"")="" Then
MsgBox "El campo no puede estar vacío",vbOkOnly+vbCritical,"ERROR"
Me.Texto17.SetFocus
Exit Sub
Else
DoCmd.RunCommand acCmdSaveRecord 'O el código que tengas para guardar
End If
End Sub